Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / ndp / fx / src / DataWeb / Client / System / Data / Services / Client / ALinq / TakeQueryOptionExpression.cs / 1 / TakeQueryOptionExpression.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Respresents a take query option in resource bound expression tree. // // // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Services.Client { using System; using System.Diagnostics; using System.Linq.Expressions; ////// An resource specific expression representing a take query option. /// [DebuggerDisplay("TakeQueryOptionExpression {TakeAmount}")] internal class TakeQueryOptionExpression : QueryOptionExpression { ///amount to skip private ConstantExpression takeAmount; ////// Creates a TakeQueryOption expression /// /// the return type of the expression /// the query option value internal TakeQueryOptionExpression(Type type, ConstantExpression takeAmount) : base((ExpressionType)ResourceExpressionType.TakeQueryOption, type) { this.takeAmount = takeAmount; } ////// query option value /// internal ConstantExpression TakeAmount { get { return this.takeAmount; } } ////// Composes the ///expression with this one when it's specified multiple times. /// to compose. /// /// The expression that results from composing the internal override QueryOptionExpression ComposeMultipleSpecification(QueryOptionExpression previous) { Debug.Assert(previous != null, "other != null"); Debug.Assert(previous.GetType() == this.GetType(), "other.GetType == this.GetType() -- otherwise it's not the same specification"); Debug.Assert(this.takeAmount != null, "this.takeAmount != null"); Debug.Assert( this.takeAmount.Type == typeof(int), "this.takeAmount.Type == typeof(int) -- otherwise it wouldn't have matched the Enumerable.Take(source, int count) signature"); int thisValue = (int)this.takeAmount.Value; int previousValue = (int)((TakeQueryOptionExpression)previous).takeAmount.Value; return (thisValue < previousValue) ? this : previous; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- //expression with this one. /// // Copyright (c) Microsoft Corporation. All rights reserved. // //// Respresents a take query option in resource bound expression tree. // // // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Services.Client { using System; using System.Diagnostics; using System.Linq.Expressions; ////// An resource specific expression representing a take query option. /// [DebuggerDisplay("TakeQueryOptionExpression {TakeAmount}")] internal class TakeQueryOptionExpression : QueryOptionExpression { ///amount to skip private ConstantExpression takeAmount; ////// Creates a TakeQueryOption expression /// /// the return type of the expression /// the query option value internal TakeQueryOptionExpression(Type type, ConstantExpression takeAmount) : base((ExpressionType)ResourceExpressionType.TakeQueryOption, type) { this.takeAmount = takeAmount; } ////// query option value /// internal ConstantExpression TakeAmount { get { return this.takeAmount; } } ////// Composes the ///expression with this one when it's specified multiple times. /// to compose. /// /// The expression that results from composing the internal override QueryOptionExpression ComposeMultipleSpecification(QueryOptionExpression previous) { Debug.Assert(previous != null, "other != null"); Debug.Assert(previous.GetType() == this.GetType(), "other.GetType == this.GetType() -- otherwise it's not the same specification"); Debug.Assert(this.takeAmount != null, "this.takeAmount != null"); Debug.Assert( this.takeAmount.Type == typeof(int), "this.takeAmount.Type == typeof(int) -- otherwise it wouldn't have matched the Enumerable.Take(source, int count) signature"); int thisValue = (int)this.takeAmount.Value; int previousValue = (int)((TakeQueryOptionExpression)previous).takeAmount.Value; return (thisValue < previousValue) ? this : previous; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.expression with this one. ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ButtonBase.cs
- ErrorWebPart.cs
- SetStoryboardSpeedRatio.cs
- RichTextBoxConstants.cs
- RNGCryptoServiceProvider.cs
- ValueUnavailableException.cs
- MemberPath.cs
- CompiledRegexRunnerFactory.cs
- UnsafeNativeMethods.cs
- BaseValidatorDesigner.cs
- PipelineModuleStepContainer.cs
- MemoryStream.cs
- HttpCacheVaryByContentEncodings.cs
- HttpHandler.cs
- XmlRootAttribute.cs
- MatrixTransform3D.cs
- ContainerAction.cs
- StorageConditionPropertyMapping.cs
- WsdlServiceChannelBuilder.cs
- TreeNodeCollection.cs
- CodeArrayIndexerExpression.cs
- SourceFilter.cs
- UserControlParser.cs
- OutputCacheProfile.cs
- DBBindings.cs
- XmlReaderSettings.cs
- SqlDataReader.cs
- SecurityManager.cs
- RequestDescription.cs
- VirtualPathUtility.cs
- InspectionWorker.cs
- AssemblyNameEqualityComparer.cs
- ReaderWriterLockWrapper.cs
- LogoValidationException.cs
- ControlParameter.cs
- ReliableMessagingVersion.cs
- EnterpriseServicesHelper.cs
- FixedPageAutomationPeer.cs
- SqlCacheDependencyDatabase.cs
- X509ChainPolicy.cs
- ActivityWithResultWrapper.cs
- EventLogPermissionEntryCollection.cs
- FormViewModeEventArgs.cs
- HyperLinkColumn.cs
- BindingOperations.cs
- TransactionContext.cs
- FileClassifier.cs
- RelationshipType.cs
- SecurityTokenAttachmentMode.cs
- GridLength.cs
- DbConnectionOptions.cs
- PackageRelationshipCollection.cs
- FormatterConverter.cs
- ViewManager.cs
- SymLanguageType.cs
- Int16Storage.cs
- MappingItemCollection.cs
- BitConverter.cs
- UserCancellationException.cs
- Stream.cs
- SystemUnicastIPAddressInformation.cs
- EdmMember.cs
- UnsafeNativeMethods.cs
- GuidConverter.cs
- ResourceManagerWrapper.cs
- BevelBitmapEffect.cs
- ExtensionDataReader.cs
- UpdatePanelTriggerCollection.cs
- DownloadProgressEventArgs.cs
- ListItemsPage.cs
- ConfigurationStrings.cs
- __ComObject.cs
- GridEntry.cs
- CardSpaceException.cs
- AddInPipelineAttributes.cs
- EntityContainerRelationshipSetEnd.cs
- PointAnimation.cs
- ByteAnimationUsingKeyFrames.cs
- CompilerLocalReference.cs
- ContextActivityUtils.cs
- EndOfStreamException.cs
- NativeMethodsCLR.cs
- ModelUtilities.cs
- StackBuilderSink.cs
- RootBrowserWindowAutomationPeer.cs
- TimelineGroup.cs
- IgnorePropertiesAttribute.cs
- TreeNode.cs
- SqlCacheDependencyDatabase.cs
- FunctionImportMapping.ReturnTypeRenameMapping.cs
- RemoteWebConfigurationHost.cs
- TypeDescriptionProviderAttribute.cs
- CdpEqualityComparer.cs
- TaiwanLunisolarCalendar.cs
- ServiceContractViewControl.Designer.cs
- MetafileHeader.cs
- Context.cs
- ProcessManager.cs
- StylusPointCollection.cs
- ScriptingWebServicesSectionGroup.cs