Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWeb / Client / System / Data / Services / Client / ProjectionPathSegment.cs / 1305376 / ProjectionPathSegment.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a class that represents a single step in a path of segments // over a parsed tree used during projection-driven materialization. // //--------------------------------------------------------------------- namespace System.Data.Services.Client { #region Namespaces. using System; using System.Diagnostics; using System.Linq.Expressions; #endregion Namespaces. ////// Use this class to represent a step in a path of segments /// over a parsed tree used during projection-driven materialization. /// [DebuggerDisplay("Segment {ProjectionType} {Member}")] internal class ProjectionPathSegment { #region Constructors. ///Initializes a new /// Path on which this segment is located. /// Name of member to access when traversing a property; possibly null. /// /// Type that we expect to project out; typically the same asinstance. , but may be adjusted. /// internal ProjectionPathSegment(ProjectionPath startPath, string member, Type projectionType) { Debug.Assert(startPath != null, "startPath != null"); this.Member = member; this.StartPath = startPath; this.ProjectionType = projectionType; } #endregion Constructors. #region Internal properties. /// Name of member to access when traversing a property; possibly null. internal string Member { get; private set; } ////// Type that we expect to project out; typically the same as ///, but may be adjusted. /// /// In particular, this type will be adjusted for nested narrowing entity types. /// /// For example: /// from c in ctx.Customers select new NarrowCustomer() { /// ID = c.ID, /// BestFriend = new NarrowCustomer() { ID = c.BestFriend.ID } /// } /// /// In this case, ID will match types on both sides, but BestFriend /// will be of type Customer in the member access of the source tree /// and we want to project out a member-initialized NarrowCustomer /// in the target tree. /// internal Type ProjectionType { get; set; } ///Path on which this segment is located. internal ProjectionPath StartPath { get; private set; } #endregion Internal properties. } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a class that represents a single step in a path of segments // over a parsed tree used during projection-driven materialization. // //--------------------------------------------------------------------- namespace System.Data.Services.Client { #region Namespaces. using System; using System.Diagnostics; using System.Linq.Expressions; #endregion Namespaces. ////// Use this class to represent a step in a path of segments /// over a parsed tree used during projection-driven materialization. /// [DebuggerDisplay("Segment {ProjectionType} {Member}")] internal class ProjectionPathSegment { #region Constructors. ///Initializes a new /// Path on which this segment is located. /// Name of member to access when traversing a property; possibly null. /// /// Type that we expect to project out; typically the same asinstance. , but may be adjusted. /// internal ProjectionPathSegment(ProjectionPath startPath, string member, Type projectionType) { Debug.Assert(startPath != null, "startPath != null"); this.Member = member; this.StartPath = startPath; this.ProjectionType = projectionType; } #endregion Constructors. #region Internal properties. /// Name of member to access when traversing a property; possibly null. internal string Member { get; private set; } ////// Type that we expect to project out; typically the same as ///, but may be adjusted. /// /// In particular, this type will be adjusted for nested narrowing entity types. /// /// For example: /// from c in ctx.Customers select new NarrowCustomer() { /// ID = c.ID, /// BestFriend = new NarrowCustomer() { ID = c.BestFriend.ID } /// } /// /// In this case, ID will match types on both sides, but BestFriend /// will be of type Customer in the member access of the source tree /// and we want to project out a member-initialized NarrowCustomer /// in the target tree. /// internal Type ProjectionType { get; set; } ///Path on which this segment is located. internal ProjectionPath StartPath { get; private set; } #endregion Internal properties. } } // 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
- AttachedPropertyBrowsableAttribute.cs
- KeyGestureConverter.cs
- PagesSection.cs
- DispatchChannelSink.cs
- TypeUtils.cs
- TraceEventCache.cs
- UserCancellationException.cs
- RowsCopiedEventArgs.cs
- Nullable.cs
- CollectionsUtil.cs
- StorageComplexTypeMapping.cs
- WizardPanel.cs
- HtmlInputButton.cs
- DbParameterHelper.cs
- EntityDataSourceEntityTypeFilterConverter.cs
- NullRuntimeConfig.cs
- RunInstallerAttribute.cs
- DataTableTypeConverter.cs
- PerformanceCounterPermissionEntryCollection.cs
- Query.cs
- AssemblyCache.cs
- SqlClientFactory.cs
- SimpleTypesSurrogate.cs
- CodeTypeParameterCollection.cs
- SegmentInfo.cs
- Tracking.cs
- ClientConfigPaths.cs
- DBCSCodePageEncoding.cs
- WinEventWrap.cs
- CurrencyWrapper.cs
- ExchangeUtilities.cs
- Accessible.cs
- ComponentSerializationService.cs
- AggregateNode.cs
- DispatcherExceptionFilterEventArgs.cs
- __ConsoleStream.cs
- BufferedGraphicsManager.cs
- ThemeableAttribute.cs
- XPathSelfQuery.cs
- SystemIcmpV6Statistics.cs
- DrawingImage.cs
- SelectionListDesigner.cs
- DataSourceControl.cs
- XmlLinkedNode.cs
- SafeUserTokenHandle.cs
- SignerInfo.cs
- VariableBinder.cs
- SapiRecoInterop.cs
- TypeExtensionConverter.cs
- ValidationErrorCollection.cs
- FrameworkReadOnlyPropertyMetadata.cs
- TextChangedEventArgs.cs
- PostBackTrigger.cs
- ValidationError.cs
- ActivityExecutionContextCollection.cs
- ProviderUtil.cs
- XmlAttributeCollection.cs
- SystemIPGlobalStatistics.cs
- ToolStripLabel.cs
- TraceHandler.cs
- WebSysDefaultValueAttribute.cs
- NameTable.cs
- JavascriptCallbackBehaviorAttribute.cs
- PersonalizationAdministration.cs
- MemberJoinTreeNode.cs
- ColumnMapProcessor.cs
- BindStream.cs
- PointHitTestParameters.cs
- XmlSchemaObjectTable.cs
- TimeSpanValidator.cs
- EntityViewGenerationConstants.cs
- WindowsFormsSectionHandler.cs
- DrawingImage.cs
- altserialization.cs
- CreateUserWizardDesigner.cs
- RemoteWebConfigurationHostServer.cs
- BoolExpressionVisitors.cs
- ListViewItem.cs
- HtmlInputControl.cs
- CssTextWriter.cs
- SystemMulticastIPAddressInformation.cs
- ConfigurationValue.cs
- Sql8ConformanceChecker.cs
- IdentityElement.cs
- LayeredChannelFactory.cs
- DynamicQueryableWrapper.cs
- ComponentRenameEvent.cs
- ToolStripLabel.cs
- TypeBrowser.xaml.cs
- BaseCodeDomTreeGenerator.cs
- MultitargetingHelpers.cs
- EventEntry.cs
- ErrorProvider.cs
- ObjectKeyFrameCollection.cs
- FlowLayout.cs
- FillRuleValidation.cs
- ContainerVisual.cs
- WindowsBrush.cs
- WebPartUtil.cs
- ModuleConfigurationInfo.cs