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
- MultipartContentParser.cs
- CollectionBase.cs
- XmlSchemaObject.cs
- TextElementEnumerator.cs
- ValidationPropertyAttribute.cs
- DBPropSet.cs
- BrowserCapabilitiesFactory.cs
- CoreSwitches.cs
- XXXOnTypeBuilderInstantiation.cs
- WebRequestModulesSection.cs
- TextHintingModeValidation.cs
- ApplicationInfo.cs
- Rect3DConverter.cs
- SqlExpressionNullability.cs
- DetailsViewDesigner.cs
- HttpApplication.cs
- fixedPageContentExtractor.cs
- WebControlParameterProxy.cs
- Durable.cs
- HttpSysSettings.cs
- DbModificationCommandTree.cs
- XmlLanguage.cs
- SecurityKeyIdentifier.cs
- ShortcutKeysEditor.cs
- LogFlushAsyncResult.cs
- BuildTopDownAttribute.cs
- DeflateStream.cs
- DbProviderFactory.cs
- WebPartConnectVerb.cs
- StreamGeometryContext.cs
- TraceSource.cs
- QilValidationVisitor.cs
- Application.cs
- XmlDocumentFragment.cs
- Thread.cs
- XmlSchemaAll.cs
- SR.cs
- TransactionScope.cs
- ProviderConnectionPointCollection.cs
- LinqDataSourceUpdateEventArgs.cs
- CanonicalizationDriver.cs
- RenderDataDrawingContext.cs
- SerializationFieldInfo.cs
- RowToParametersTransformer.cs
- UrlMappingsSection.cs
- ExplicitDiscriminatorMap.cs
- CachedPathData.cs
- ProfilePropertySettings.cs
- ButtonBase.cs
- Double.cs
- webbrowsersite.cs
- ErrorFormatterPage.cs
- GridViewSortEventArgs.cs
- XmlDigitalSignatureProcessor.cs
- WebPartsPersonalization.cs
- XmlAutoDetectWriter.cs
- CreatingCookieEventArgs.cs
- OutputCacheModule.cs
- CodeTypeConstructor.cs
- DataGridViewRowEventArgs.cs
- OleCmdHelper.cs
- ArgumentDirectionHelper.cs
- XhtmlBasicLiteralTextAdapter.cs
- FrameworkObject.cs
- SelectionEditingBehavior.cs
- SHA256Managed.cs
- LicenseContext.cs
- MeasureItemEvent.cs
- Operator.cs
- XmlLinkedNode.cs
- HtmlString.cs
- Thumb.cs
- AvTrace.cs
- DirectoryInfo.cs
- CompositeScriptReferenceEventArgs.cs
- DocobjHost.cs
- ParallelTimeline.cs
- Object.cs
- SqlCharStream.cs
- FileEnumerator.cs
- ScriptResourceDefinition.cs
- XmlTypeAttribute.cs
- PreservationFileWriter.cs
- XmlTextReaderImpl.cs
- PagerSettings.cs
- DataRelation.cs
- CustomErrorsSectionWrapper.cs
- ThreadBehavior.cs
- ExpandCollapseProviderWrapper.cs
- DbLambda.cs
- FlagsAttribute.cs
- ColumnPropertiesGroup.cs
- SplitContainerDesigner.cs
- XmlTextReaderImpl.cs
- Descriptor.cs
- ReplyAdapterChannelListener.cs
- AddInToken.cs
- WindowsListViewItemCheckBox.cs
- ToolStripContentPanelRenderEventArgs.cs
- SQLInt64.cs