Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWeb / Client / System / Data / Services / Client / ProjectionPath.cs / 1305376 / ProjectionPath.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a class to represent an annotated path of segments // (each of which is a step in the parsed tree). // //--------------------------------------------------------------------- namespace System.Data.Services.Client { #region Namespaces. using System.Collections.Generic; using System.Diagnostics; using System.Linq.Expressions; using System.Text; #endregion Namespaces. ///Use this class to represent an annotated list of path segments. [DebuggerDisplay("{ToString()}")] internal class ProjectionPath : List{ #region Constructors. /// Initializes a new internal ProjectionPath() : base() { } ///instance. Initializes a new /// Root parameter for this path. /// Expression to get the expected root type in the target tree. /// Expression for the root entry. internal ProjectionPath(ParameterExpression root, Expression expectedRootType, Expression rootEntry) : base() { this.Root = root; this.RootEntry = rootEntry; this.ExpectedRootType = expectedRootType; } ///instance. Initializes a new /// Root parameter for this path. /// Expression to get the expected root type in the target tree. /// Expression for the root entry. /// Member to initialize the path with. internal ProjectionPath(ParameterExpression root, Expression expectedRootType, Expression rootEntry, IEnumerableinstance. members) : this(root, expectedRootType, rootEntry) { Debug.Assert(members != null, "members != null"); foreach (Expression member in members) { this.Add(new ProjectionPathSegment(this, ((MemberExpression)member).Member.Name, member.Type)); } } #endregion Constructors. #region Internal properties. /// Parameter expression in the source tree. internal ParameterExpression Root { get; private set; } ///Expression to get the entry for internal Expression RootEntry { get; private set; } ///in the target tree. Expression to get the expected root type in the target tree. internal Expression ExpectedRootType { get; private set; } #endregion Internal properties. #region Methods. ///Provides a string representation of this object. ///A string representation of this object, suitable for debugging. public override string ToString() { StringBuilder builder = new StringBuilder(); builder.Append(this.Root.ToString()); builder.Append("->"); for (int i = 0; i < this.Count; i++) { if (i > 0) { builder.Append('.'); } builder.Append(this[i].Member == null ? "*" : this[i].Member); } return builder.ToString(); } #endregion Methods. } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a class to represent an annotated path of segments // (each of which is a step in the parsed tree). // //--------------------------------------------------------------------- namespace System.Data.Services.Client { #region Namespaces. using System.Collections.Generic; using System.Diagnostics; using System.Linq.Expressions; using System.Text; #endregion Namespaces. ///Use this class to represent an annotated list of path segments. [DebuggerDisplay("{ToString()}")] internal class ProjectionPath : List{ #region Constructors. /// Initializes a new internal ProjectionPath() : base() { } ///instance. Initializes a new /// Root parameter for this path. /// Expression to get the expected root type in the target tree. /// Expression for the root entry. internal ProjectionPath(ParameterExpression root, Expression expectedRootType, Expression rootEntry) : base() { this.Root = root; this.RootEntry = rootEntry; this.ExpectedRootType = expectedRootType; } ///instance. Initializes a new /// Root parameter for this path. /// Expression to get the expected root type in the target tree. /// Expression for the root entry. /// Member to initialize the path with. internal ProjectionPath(ParameterExpression root, Expression expectedRootType, Expression rootEntry, IEnumerableinstance. members) : this(root, expectedRootType, rootEntry) { Debug.Assert(members != null, "members != null"); foreach (Expression member in members) { this.Add(new ProjectionPathSegment(this, ((MemberExpression)member).Member.Name, member.Type)); } } #endregion Constructors. #region Internal properties. /// Parameter expression in the source tree. internal ParameterExpression Root { get; private set; } ///Expression to get the entry for internal Expression RootEntry { get; private set; } ///in the target tree. Expression to get the expected root type in the target tree. internal Expression ExpectedRootType { get; private set; } #endregion Internal properties. #region Methods. ///Provides a string representation of this object. ///A string representation of this object, suitable for debugging. public override string ToString() { StringBuilder builder = new StringBuilder(); builder.Append(this.Root.ToString()); builder.Append("->"); for (int i = 0; i < this.Count; i++) { if (i > 0) { builder.Append('.'); } builder.Append(this[i].Member == null ? "*" : this[i].Member); } return builder.ToString(); } #endregion Methods. } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Pen.cs
- NativeRecognizer.cs
- DataSetViewSchema.cs
- WindowClosedEventArgs.cs
- TabControlCancelEvent.cs
- ExceptionWrapper.cs
- CryptoProvider.cs
- SymLanguageType.cs
- DateRangeEvent.cs
- SoapMessage.cs
- PropertyManager.cs
- TakeOrSkipWhileQueryOperator.cs
- DescendentsWalker.cs
- SecurityException.cs
- BindingValueChangedEventArgs.cs
- ValidatorAttribute.cs
- NativeMethods.cs
- UnsafeNetInfoNativeMethods.cs
- SQLInt32.cs
- SecurityAccessDeniedException.cs
- CrossSiteScriptingValidation.cs
- CodeTypeReferenceCollection.cs
- ServicePointManager.cs
- IImplicitResourceProvider.cs
- BamlMapTable.cs
- DataMemberFieldEditor.cs
- DataControlExtensions.cs
- ControlCommandSet.cs
- SerialStream.cs
- CodeTypeDelegate.cs
- XmlSchemaObject.cs
- Vector3D.cs
- AutomationPattern.cs
- HtmlTableRowCollection.cs
- CachedTypeface.cs
- DateTimeConstantAttribute.cs
- ContextStaticAttribute.cs
- ToolZone.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- FreezableOperations.cs
- DataGridCheckBoxColumn.cs
- VirtualDirectoryMapping.cs
- counter.cs
- CodeDefaultValueExpression.cs
- WorkflowPersistenceService.cs
- HtmlWindowCollection.cs
- UnmanagedMarshal.cs
- TextEditorCopyPaste.cs
- WebPartHelpVerb.cs
- MediaScriptCommandRoutedEventArgs.cs
- Transform3D.cs
- ReplacementText.cs
- KeyedCollection.cs
- EntityModelSchemaGenerator.cs
- HMACRIPEMD160.cs
- TryLoadRunnableWorkflowCommand.cs
- Int64AnimationUsingKeyFrames.cs
- RadioButtonBaseAdapter.cs
- MD5Cng.cs
- HealthMonitoringSection.cs
- DoubleLinkListEnumerator.cs
- HtmlInputText.cs
- grammarelement.cs
- WhiteSpaceTrimStringConverter.cs
- BitmapEffect.cs
- FormsAuthenticationUser.cs
- DefinitionUpdate.cs
- EUCJPEncoding.cs
- GlyphInfoList.cs
- TextServicesDisplayAttribute.cs
- ImagingCache.cs
- XmlNamedNodeMap.cs
- WebPartExportVerb.cs
- NativeCompoundFileAPIs.cs
- CharacterMetrics.cs
- ActivityStatusChangeEventArgs.cs
- TextSimpleMarkerProperties.cs
- DesignConnection.cs
- ArrayTypeMismatchException.cs
- SessionEndedEventArgs.cs
- XmlNotation.cs
- TypeLoadException.cs
- ColorConvertedBitmapExtension.cs
- EdmValidator.cs
- ValidationManager.cs
- SetStateDesigner.cs
- PageRanges.cs
- QuaternionAnimationUsingKeyFrames.cs
- QueryCacheEntry.cs
- ContractMapping.cs
- MenuRendererClassic.cs
- ServicePointManager.cs
- FixedPageStructure.cs
- ToolStripTextBox.cs
- RectIndependentAnimationStorage.cs
- Permission.cs
- UserControlAutomationPeer.cs
- CLSCompliantAttribute.cs
- _DomainName.cs
- DataContract.cs