Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWeb / Client / System / Data / Services / Client / DataServiceQueryContinuation.cs / 1305376 / DataServiceQueryContinuation.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a class to represent the continuation of a query. // //--------------------------------------------------------------------- namespace System.Data.Services.Client { #region Namespaces. using System.Collections.Generic; using System.Diagnostics; using System.Linq.Expressions; using System.Text; using System.Reflection; #endregion Namespaces. ///Use this class to represent the continuation of a query. [DebuggerDisplay("{NextLinkUri}")] public abstract class DataServiceQueryContinuation { #region Private fields. ///URI to next page of data. private readonly Uri nextLinkUri; ///Projection plan for results of next page. private readonly ProjectionPlan plan; #endregion Private fields. #region Constructors. ///Initializes a new /// URI to next page of data. /// Projection plan for results of next page. internal DataServiceQueryContinuation(Uri nextLinkUri, ProjectionPlan plan) { Debug.Assert(nextLinkUri != null, "nextLinkUri != null"); Debug.Assert(plan != null, "plan != null"); this.nextLinkUri = nextLinkUri; this.plan = plan; } #endregion Contructors. #region Properties. ///instance. The URI to the next page of data. public Uri NextLinkUri { get { return this.nextLinkUri; } } ///Type of element to be paged over. internal abstract Type ElementType { get; } ///Projection plan for the next page of data; null if not available. internal ProjectionPlan Plan { get { return this.plan; } } #endregion Properties. #region Methods. ///Provides a string representation of this continuation. ///String representation. public override string ToString() { return this.NextLinkUri.ToString(); } ///Creates a new /// Link to next page of data (possibly null). /// Plan to materialize the data (only null if nextLinkUri is null). ///instance. A new continuation object; null if nextLinkUri is null. internal static DataServiceQueryContinuation Create(Uri nextLinkUri, ProjectionPlan plan) { Debug.Assert(plan != null || nextLinkUri == null, "plan != null || nextLinkUri == null"); if (nextLinkUri == null) { return null; } var constructors = typeof(DataServiceQueryContinuation<>).MakeGenericType(plan.ProjectedType).GetConstructors(BindingFlags.NonPublic | BindingFlags.Instance); Debug.Assert(constructors.Length == 1, "constructors.Length == 1"); object result = Util.ConstructorInvoke(constructors[0], new object[] { nextLinkUri, plan }); return (DataServiceQueryContinuation)result; } ////// Initializes a new ///instance that can /// be used for this continuation. /// A new initializes internal QueryComponents CreateQueryComponents() { QueryComponents result = new QueryComponents(this.NextLinkUri, Util.DataServiceVersionEmpty, this.Plan.LastSegmentType, null, null); return result; } #endregion Methods. } ///. Use this class to represent the continuation of a query. ///Element type. public sealed class DataServiceQueryContinuation: DataServiceQueryContinuation { #region Contructors. /// Initializes a new typed instance. /// URI to next page of data. /// Projection plan for results of next page. internal DataServiceQueryContinuation(Uri nextLinkUri, ProjectionPlan plan) : base(nextLinkUri, plan) { } #endregion Contructors. #region Properties. ///Type of element to be paged over. internal override Type ElementType { get { return typeof(T); } } #endregion Properties. } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SecurityTokenRequirement.cs
- OletxEnlistment.cs
- DataGridViewMethods.cs
- BindableTemplateBuilder.cs
- DataGridCaption.cs
- EventRouteFactory.cs
- WeakReferenceList.cs
- StringUtil.cs
- RemotingConfigParser.cs
- Missing.cs
- EntitySqlException.cs
- InputBindingCollection.cs
- MdiWindowListItemConverter.cs
- MimeTypeMapper.cs
- XPathAncestorIterator.cs
- SmiGettersStream.cs
- Group.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- TypeUnloadedException.cs
- DataGridViewTextBoxCell.cs
- Module.cs
- HandlerFactoryWrapper.cs
- ProtectedConfigurationProviderCollection.cs
- DataGridViewMethods.cs
- HostedBindingBehavior.cs
- ProtocolException.cs
- WebException.cs
- Int32Rect.cs
- BitArray.cs
- DocumentEventArgs.cs
- TransformedBitmap.cs
- DataTrigger.cs
- TrustManagerMoreInformation.cs
- DecoderFallback.cs
- DataGridItem.cs
- Helpers.cs
- MethodAccessException.cs
- FunctionNode.cs
- Panel.cs
- XmlIlTypeHelper.cs
- CodeEventReferenceExpression.cs
- AsyncResult.cs
- WeakEventManager.cs
- ComMethodElement.cs
- ImageList.cs
- XPathMultyIterator.cs
- MailWebEventProvider.cs
- AttributeData.cs
- CurrentChangingEventManager.cs
- WindowsStatic.cs
- BrowserTree.cs
- XmlSchemaImporter.cs
- TypeResolvingOptionsAttribute.cs
- XmlWrappingReader.cs
- Lease.cs
- Rect3DValueSerializer.cs
- PagesChangedEventArgs.cs
- CompleteWizardStep.cs
- HtmlTextBoxAdapter.cs
- PropertyDescriptor.cs
- ObsoleteAttribute.cs
- TextEditorParagraphs.cs
- mediaeventshelper.cs
- TextOnlyOutput.cs
- SQLInt16Storage.cs
- XmlParserContext.cs
- MenuAutomationPeer.cs
- EditBehavior.cs
- FormViewUpdatedEventArgs.cs
- ParentQuery.cs
- RuleSettingsCollection.cs
- Win32PrintDialog.cs
- ExternalCalls.cs
- IdentifierService.cs
- ProxyWebPartManager.cs
- OrderByQueryOptionExpression.cs
- LoginName.cs
- PinnedBufferMemoryStream.cs
- CDSsyncETWBCLProvider.cs
- DocumentSchemaValidator.cs
- EncodingNLS.cs
- UserControl.cs
- ViewSimplifier.cs
- CatalogZone.cs
- DataGridPageChangedEventArgs.cs
- ContextConfiguration.cs
- Helpers.cs
- ConfigurationPermission.cs
- SystemColors.cs
- ListViewContainer.cs
- ClientSideProviderDescription.cs
- ToolStripDropDownClosingEventArgs.cs
- NameTable.cs
- Vector3DAnimation.cs
- AutomationAttributeInfo.cs
- ThrowHelper.cs
- Int64AnimationBase.cs
- DurableOperationContext.cs
- ToolStripItemClickedEventArgs.cs
- ButtonPopupAdapter.cs