Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BindingMAnagerBase.cs
- PrinterUnitConvert.cs
- SoapObjectWriter.cs
- AmbientProperties.cs
- BoolExpression.cs
- HostUtils.cs
- ObjectPersistData.cs
- ElementMarkupObject.cs
- IndexedEnumerable.cs
- DataBinding.cs
- XsdBuildProvider.cs
- HttpInputStream.cs
- SiteMap.cs
- SerializationSectionGroup.cs
- prompt.cs
- ClrProviderManifest.cs
- ComPlusDiagnosticTraceSchemas.cs
- SystemUnicastIPAddressInformation.cs
- SafeRightsManagementPubHandle.cs
- TextRunCacheImp.cs
- HostingEnvironment.cs
- CompositeDataBoundControl.cs
- PropertyChangingEventArgs.cs
- StreamWithDictionary.cs
- AssemblyCollection.cs
- OpenTypeLayout.cs
- ToolStripHighContrastRenderer.cs
- PageThemeParser.cs
- XamlTreeBuilder.cs
- EndPoint.cs
- EllipticalNodeOperations.cs
- CodeSnippetExpression.cs
- CreateUserWizard.cs
- ADMembershipUser.cs
- BindingMemberInfo.cs
- InternalEnumValidator.cs
- CryptoStream.cs
- SMSvcHost.cs
- LogExtentCollection.cs
- BufferBuilder.cs
- WebBaseEventKeyComparer.cs
- UrlPath.cs
- PageCodeDomTreeGenerator.cs
- RowUpdatingEventArgs.cs
- Span.cs
- MemberHolder.cs
- Attributes.cs
- HttpModuleAction.cs
- XmlNamespaceMapping.cs
- Soap.cs
- UpWmlMobileTextWriter.cs
- BorderSidesEditor.cs
- RemoteWebConfigurationHostStream.cs
- CultureInfoConverter.cs
- DetailsViewInsertedEventArgs.cs
- ScriptReferenceEventArgs.cs
- TextServicesDisplayAttributePropertyRanges.cs
- VScrollProperties.cs
- MobileControlBuilder.cs
- MobileDeviceCapabilitiesSectionHandler.cs
- PageMediaType.cs
- WebPartUtil.cs
- PKCS1MaskGenerationMethod.cs
- Font.cs
- ProcessRequestAsyncResult.cs
- TypeBrowser.xaml.cs
- StagingAreaInputItem.cs
- UtilityExtension.cs
- EdmToObjectNamespaceMap.cs
- EmulateRecognizeCompletedEventArgs.cs
- TagNameToTypeMapper.cs
- PageThemeCodeDomTreeGenerator.cs
- SingleStorage.cs
- FrameAutomationPeer.cs
- Table.cs
- TransformGroup.cs
- ImageIndexConverter.cs
- SplitterEvent.cs
- MSAAEventDispatcher.cs
- Rfc2898DeriveBytes.cs
- XAMLParseException.cs
- ItemCollectionEditor.cs
- validation.cs
- RuleInfoComparer.cs
- AnnotationAuthorChangedEventArgs.cs
- NotificationContext.cs
- AdPostCacheSubstitution.cs
- UpdateCommand.cs
- Point4D.cs
- UInt32Storage.cs
- RowType.cs
- ConfigurationFileMap.cs
- FixedSchema.cs
- XmlLanguage.cs
- _BasicClient.cs
- SHA1Managed.cs
- ObjectStateEntryDbDataRecord.cs
- BulletDecorator.cs
- ArgIterator.cs
- Composition.cs