Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Common / CommandTrees / Aggregates.cs / 1305376 / Aggregates.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Data.Common; using System.Collections.Generic; using System.Data.Metadata.Edm; using System.Data.Common.CommandTrees.Internal; using System.Diagnostics; namespace System.Data.Common.CommandTrees { ////// Aggregates are pseudo-expressions. They look and feel like expressions, but /// are severely restricted in where they can appear - only in the aggregates clause /// of a group-by expression. /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")] public abstract class DbAggregate { private readonly DbExpressionList _args; private readonly TypeUsage _type; internal DbAggregate(TypeUsage resultType, DbExpressionList arguments) { Debug.Assert(resultType != null, "DbAggregate.ResultType cannot be null"); Debug.Assert(arguments != null, "DbAggregate.Arguments cannot be null"); Debug.Assert(arguments.Count == 1, "DbAggregate requires a single argument"); this._type = resultType; this._args = arguments; } ////// Gets the result type of this aggregate /// public TypeUsage ResultType { get { return _type; } } ////// Gets the list of expressions that define the arguments to the aggregate. /// public IListArguments { get { return _args; } } } /// /// The aggregate type that corresponds to exposing the collection of elements that comprise a group /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")] public sealed class DbGroupAggregate : DbAggregate { internal DbGroupAggregate(TypeUsage resultType, DbExpressionList arguments) : base(resultType, arguments) { } } ////// The aggregate type that corresponds to the invocation of an aggregate function. /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")] public sealed class DbFunctionAggregate : DbAggregate { private bool _distinct; EdmFunction _aggregateFunction; internal DbFunctionAggregate(TypeUsage resultType, DbExpressionList arguments, EdmFunction function, bool isDistinct) : base(resultType, arguments) { Debug.Assert(function != null, "DbFunctionAggregate.Function cannot be null"); _aggregateFunction = function; _distinct = isDistinct; } ////// Gets a value indicating whether the aggregate function is applied in a distinct fashion /// public bool Distinct { get { return _distinct; } } ////// Gets the method metadata that specifies the aggregate function to invoke. /// public EdmFunction Function { get { return _aggregateFunction; } } } } // 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
- XhtmlBasicListAdapter.cs
- XmlDataContract.cs
- Rect3DConverter.cs
- TempFiles.cs
- StructureChangedEventArgs.cs
- RelationshipWrapper.cs
- MissingMemberException.cs
- CriticalFinalizerObject.cs
- CodeIndexerExpression.cs
- GridViewPageEventArgs.cs
- InvalidOleVariantTypeException.cs
- ToolStripRenderer.cs
- IDictionary.cs
- SqlWriter.cs
- EqualityComparer.cs
- SimplePropertyEntry.cs
- FileFormatException.cs
- _SSPISessionCache.cs
- ReceiveParametersContent.cs
- WindowsToolbar.cs
- AmbientValueAttribute.cs
- XmlTypeMapping.cs
- CallContext.cs
- PackageController.cs
- ISAPIWorkerRequest.cs
- BasePattern.cs
- XmlSchemaCollection.cs
- securestring.cs
- CaretElement.cs
- FileSystemInfo.cs
- HScrollProperties.cs
- RefExpr.cs
- TextSimpleMarkerProperties.cs
- DataGridHeadersVisibilityToVisibilityConverter.cs
- Socket.cs
- HostingEnvironment.cs
- RefreshPropertiesAttribute.cs
- TraceContext.cs
- WpfKnownType.cs
- ColorContext.cs
- DataMemberListEditor.cs
- ObjectPersistData.cs
- AutoGeneratedField.cs
- QilValidationVisitor.cs
- TaiwanCalendar.cs
- AttributeSetAction.cs
- WebConfigurationFileMap.cs
- safesecurityhelperavalon.cs
- WindowsGraphicsWrapper.cs
- unitconverter.cs
- XamlFilter.cs
- TypeSystem.cs
- CalculatedColumn.cs
- FloaterParagraph.cs
- NotificationContext.cs
- PrintPreviewControl.cs
- CompModSwitches.cs
- FrameworkElementFactory.cs
- SchemaObjectWriter.cs
- Timeline.cs
- QuaternionAnimation.cs
- TableLayoutColumnStyleCollection.cs
- PlanCompilerUtil.cs
- VScrollBar.cs
- QueryParameter.cs
- TypeResolvingOptions.cs
- CodeObject.cs
- DirectoryRootQuery.cs
- InterleavedZipPartStream.cs
- Rectangle.cs
- HttpHandlersSection.cs
- XamlVector3DCollectionSerializer.cs
- SecurityRuntime.cs
- XamlReader.cs
- ReadWriteControlDesigner.cs
- OperationContractAttribute.cs
- Point3D.cs
- SimpleMailWebEventProvider.cs
- TimeIntervalCollection.cs
- PerfCounters.cs
- TextCompositionManager.cs
- ImageKeyConverter.cs
- MachineKeySection.cs
- XamlPathDataSerializer.cs
- StreamedWorkflowDefinitionContext.cs
- TransformerTypeCollection.cs
- ScanQueryOperator.cs
- ClientTarget.cs
- HttpChannelBindingToken.cs
- GenericRootAutomationPeer.cs
- IgnoreDeviceFilterElementCollection.cs
- ToolboxItemAttribute.cs
- ServiceMetadataPublishingElement.cs
- DataGridViewSelectedColumnCollection.cs
- XmlJsonWriter.cs
- BroadcastEventHelper.cs
- TimerEventSubscriptionCollection.cs
- GridEntryCollection.cs
- ListItemCollection.cs
- IdentifierCollection.cs