Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWeb / Client / System / Data / Services / Client / QueryResponse.cs / 1625574 / QueryResponse.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Response to a batched query. // //--------------------------------------------------------------------- namespace System.Data.Services.Client { #region Namespaces. using System; using System.Collections; using System.Collections.Generic; using System.Reflection; using System.Diagnostics; #endregion Namespaces. ////// Response to a batched query. /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1010", Justification = "required for this feature")] [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1710", Justification = "required for this feature")] public class QueryOperationResponse : OperationResponse, System.Collections.IEnumerable { #region Private fields. ///Original query private readonly DataServiceRequest query; ///Enumerable of objects in query private readonly MaterializeAtom results; #endregion Private fields. ////// constructor /// /// HTTP headers /// original query /// retrieved objects internal QueryOperationResponse(Dictionaryheaders, DataServiceRequest query, MaterializeAtom results) : base(headers) { this.query = query; this.results = results; } /// The query that executed within the batch. public DataServiceRequest Query { get { return this.query; } } ////// The server Result Set Count value from a query, if the query has requested the value /// ////// The return value can be either a zero or positive value equals to number of entities in the set on the server /// ////// Is thrown when count was not part of the original request, i.e., if the count tag is not found in the response stream. /// public virtual long TotalCount { get { throw new NotSupportedException(); } } ///get a non-null enumerable of the result internal MaterializeAtom Results { get { if (null != this.Error) { throw System.Data.Services.Client.Error.InvalidOperation(Strings.Context_BatchExecuteError, this.Error); } return this.results; } } ///Results from a query ///enumerator of objects in query public System.Collections.IEnumerator GetEnumerator() { return this.Results.GetEnumerator(); } ////// Gets the continuation for the top level data stream associated with this response object /// ///A continuation that points to the next page for the current data stream in the response. public DataServiceQueryContinuation GetContinuation() { return this.results.GetContinuation(null); } ////// Gets the continuation for the next page in the collection. /// /// The collection, or null, if the top level link is to be retrieved ///A continuation that points to the next page for the collection public DataServiceQueryContinuation GetContinuation(IEnumerable collection) { return this.results.GetContinuation(collection); } ////// Gets the continuation for the next page in the collection. /// ///Element type for continuation results. /// The collection, or null, if the top level link is to be retrieved ///A continuation that points to the next page for the collection public DataServiceQueryContinuationGetContinuation (IEnumerable collection) { return (DataServiceQueryContinuation )this.results.GetContinuation(collection); } /// /// Creates a generic instance of the QueryOperationResponse and return it /// /// generic type for the QueryOperationResponse. /// constructor parameter1 /// constructor parameter2 /// constructor parameter3 ///returns a new strongly typed instance of QueryOperationResponse. [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining | System.Runtime.CompilerServices.MethodImplOptions.NoOptimization)] internal static QueryOperationResponse GetInstance(Type elementType, Dictionaryheaders, DataServiceRequest query, MaterializeAtom results) { Type genericType = typeof(QueryOperationResponse<>).MakeGenericType(elementType); #if !ASTORIA_LIGHT return (QueryOperationResponse)Activator.CreateInstance( genericType, BindingFlags.CreateInstance | BindingFlags.NonPublic | BindingFlags.Instance, null, new object[] { headers, query, results }, System.Globalization.CultureInfo.InvariantCulture); #else System.Reflection.ConstructorInfo[] info = genericType.GetConstructors(BindingFlags.NonPublic | BindingFlags.Instance); System.Diagnostics.Debug.Assert(1 == info.Length, "only expected 1 ctor"); return (QueryOperationResponse)Util.ConstructorInvoke(info[0],new object[] { headers, query, results }); #endif } } } // 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
- DesignSurfaceServiceContainer.cs
- WindowsListViewItem.cs
- KeyManager.cs
- Matrix3D.cs
- OAVariantLib.cs
- XmlSignificantWhitespace.cs
- HierarchicalDataSourceControl.cs
- CallSite.cs
- ConnectionString.cs
- SrgsElementFactoryCompiler.cs
- DataGridParentRows.cs
- UseManagedPresentationElement.cs
- StrongNamePublicKeyBlob.cs
- PathFigure.cs
- StatusBarDesigner.cs
- ToolTipService.cs
- DataGridViewCellMouseEventArgs.cs
- NullableFloatAverageAggregationOperator.cs
- ZipIOCentralDirectoryBlock.cs
- MessagingActivityHelper.cs
- StateDesigner.cs
- TraceContextRecord.cs
- SqlAliasesReferenced.cs
- DataGridHeaderBorder.cs
- sqlcontext.cs
- SByteStorage.cs
- HMACSHA384.cs
- BinaryObjectInfo.cs
- OracleParameter.cs
- CFGGrammar.cs
- LongCountAggregationOperator.cs
- SoapRpcServiceAttribute.cs
- DoubleIndependentAnimationStorage.cs
- GraphicsPath.cs
- KeyInfo.cs
- StylusPointDescription.cs
- CodeAssignStatement.cs
- ImageEditor.cs
- TCPClient.cs
- ScriptResourceAttribute.cs
- DataGridViewColumnDesigner.cs
- FileDialog.cs
- FileStream.cs
- Message.cs
- ClientProtocol.cs
- XmlEncoding.cs
- XamlPointCollectionSerializer.cs
- LinqDataSourceContextData.cs
- WebPartTracker.cs
- ObfuscationAttribute.cs
- HyperLink.cs
- XmlImplementation.cs
- DataGridViewButtonCell.cs
- RelationHandler.cs
- DataServiceResponse.cs
- StickyNoteAnnotations.cs
- MenuAdapter.cs
- OlePropertyStructs.cs
- ExecutedRoutedEventArgs.cs
- DateTimePickerDesigner.cs
- ErrorView.xaml.cs
- Symbol.cs
- DocumentsTrace.cs
- FontFamily.cs
- InkCanvas.cs
- EdgeProfileValidation.cs
- FilterEventArgs.cs
- BitmapCache.cs
- WebProxyScriptElement.cs
- XsdValidatingReader.cs
- UpdateCompiler.cs
- PriorityItem.cs
- DecimalAnimation.cs
- ExternalFile.cs
- ping.cs
- SoapTypeAttribute.cs
- StorageComplexTypeMapping.cs
- PersonalizationDictionary.cs
- GrowingArray.cs
- StrokeDescriptor.cs
- LayoutEditorPart.cs
- ActivityExecutorOperation.cs
- PersistNameAttribute.cs
- DrawingContextWalker.cs
- HtmlWindow.cs
- ExceptionHelpers.cs
- LoginView.cs
- XXXInfos.cs
- TextSelectionProcessor.cs
- CodeAttributeDeclarationCollection.cs
- BackgroundFormatInfo.cs
- StorageTypeMapping.cs
- MDIClient.cs
- RelationshipDetailsRow.cs
- QilTypeChecker.cs
- KeyTimeConverter.cs
- CollectionContainer.cs
- TraceSource.cs
- PolicyImporterElementCollection.cs
- Label.cs