Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Common / CommandTrees / ExpressionBindings.cs / 1305376 / ExpressionBindings.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Diagnostics; using System.Data.Common; using System.Data.Common.Utils; using System.Data.Metadata.Edm; using System.Data.Common.CommandTrees.Internal; using System.Data.Common.CommandTrees.ExpressionBuilder; namespace System.Data.Common.CommandTrees { ////// Describes a binding for an expression. Conceptually similar to a foreach loop /// in C#. The DbExpression property defines the collection being iterated over, /// while the Var property provides a means to reference the current element /// of the collection during the iteration. DbExpressionBinding is used to describe the set arguments /// to relational expressions such as ///, /// and . /// /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")] public sealed class DbExpressionBinding { private readonly DbExpression _expr; private readonly DbVariableReferenceExpression _varRef; internal DbExpressionBinding(DbExpression input, DbVariableReferenceExpression varRef) { Debug.Assert(input != null, "DbExpressionBinding input cannot be null"); Debug.Assert(varRef != null, "DbExpressionBinding variable cannot be null"); _expr = input; _varRef = varRef; } /// /// Gets the public DbExpression Expression { get { return _expr; } } ///that defines the input set. /// /// Gets the name assigned to the element variable. /// public string VariableName { get { return _varRef.VariableName; } } ////// Gets the type metadata of the element variable. /// public TypeUsage VariableType { get { return _varRef.ResultType; } } ////// Gets the public DbVariableReferenceExpression Variable { get { return _varRef;} } } ///that references the element variable. /// /// Defines the binding for the input set to a [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")] public sealed class DbGroupExpressionBinding { private /*readonly*/ DbExpression _expr; private readonly DbVariableReferenceExpression _varRef; private readonly DbVariableReferenceExpression _groupVarRef; private DbGroupAggregate _groupAggregate; internal DbGroupExpressionBinding(DbExpression input, DbVariableReferenceExpression inputRef, DbVariableReferenceExpression groupRef) { _expr = input; _varRef = inputRef; _groupVarRef = groupRef; } ///. /// In addition to the properties of , DbGroupExpressionBinding /// also provides access to the group element via the variable reference /// and to the group aggregate via the property. /// /// Gets the public DbExpression Expression { get { return _expr; } } ///that defines the input set. /// /// Gets the name assigned to the element variable. /// public string VariableName { get { return _varRef.VariableName; } } ////// Gets the type metadata of the element variable. /// public TypeUsage VariableType { get { return _varRef.ResultType; } } ////// Gets the DbVariableReferenceExpression that references the element variable. /// public DbVariableReferenceExpression Variable { get { return _varRef; } } ////// Gets the name assigned to the group element variable. /// public string GroupVariableName { get { return _groupVarRef.VariableName; } } ////// Gets the type metadata of the group element variable. /// public TypeUsage GroupVariableType { get { return _groupVarRef.ResultType; } } ////// Gets the DbVariableReferenceExpression that references the group element variable. /// public DbVariableReferenceExpression GroupVariable { get { return _groupVarRef; } } ////// Gets the DbGroupAggregate that represents the collection of elements of the group. /// public DbGroupAggregate GroupAggregate { get { if (_groupAggregate == null) { _groupAggregate = DbExpressionBuilder.GroupAggregate(this.GroupVariable); } return _groupAggregate; } } } } // 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
- DataTable.cs
- SplitterPanel.cs
- AttributeConverter.cs
- AssociationTypeEmitter.cs
- HMAC.cs
- DataSetViewSchema.cs
- TypeConverter.cs
- DeferredElementTreeState.cs
- TreeIterators.cs
- MediaPlayer.cs
- QilStrConcat.cs
- BitArray.cs
- NetworkInformationException.cs
- GPRECTF.cs
- CookielessHelper.cs
- cookieexception.cs
- StatusBar.cs
- precedingsibling.cs
- cookiecollection.cs
- ConfigViewGenerator.cs
- WebPartEditorApplyVerb.cs
- RawTextInputReport.cs
- Visual3D.cs
- ForEachAction.cs
- SafeNativeMethods.cs
- SmiMetaDataProperty.cs
- CodeGeneratorAttribute.cs
- TimersDescriptionAttribute.cs
- MultiPageTextView.cs
- UnaryExpression.cs
- TextElementEnumerator.cs
- SafeBitVector32.cs
- ResourceContainer.cs
- _NtlmClient.cs
- precedingquery.cs
- Sequence.cs
- TextEditorCopyPaste.cs
- ZeroOpNode.cs
- Int16AnimationBase.cs
- Root.cs
- ProgressiveCrcCalculatingStream.cs
- FolderBrowserDialog.cs
- ChildrenQuery.cs
- CqlLexerHelpers.cs
- CustomAttribute.cs
- EntitySetBase.cs
- AttachmentService.cs
- SplashScreenNativeMethods.cs
- XDeferredAxisSource.cs
- ListViewUpdatedEventArgs.cs
- SmtpNtlmAuthenticationModule.cs
- ContainerParaClient.cs
- X509ClientCertificateAuthenticationElement.cs
- SingleSelectRootGridEntry.cs
- EnumerableWrapperWeakToStrong.cs
- ReadOnlyCollectionBase.cs
- View.cs
- DataStreams.cs
- IdentityNotMappedException.cs
- HandlerFactoryWrapper.cs
- XPathSelfQuery.cs
- OracleInfoMessageEventArgs.cs
- StyleXamlParser.cs
- ColorAnimation.cs
- PropertiesTab.cs
- EdmProperty.cs
- EntityDataSourceContainerNameItem.cs
- WindowPatternIdentifiers.cs
- XmlSerializerSection.cs
- DataRelation.cs
- CommonGetThemePartSize.cs
- ClientFormsIdentity.cs
- DataSourceConverter.cs
- CaseInsensitiveOrdinalStringComparer.cs
- WorkflowDesignerMessageFilter.cs
- ProcessModelInfo.cs
- CollectionView.cs
- DataGridViewComboBoxColumn.cs
- InvokeMethodActivity.cs
- mongolianshape.cs
- CalendarTable.cs
- FormViewPageEventArgs.cs
- itemelement.cs
- ClientOperation.cs
- MessageQueue.cs
- ProviderBase.cs
- ArgumentNullException.cs
- ScrollItemPatternIdentifiers.cs
- ListSortDescription.cs
- Comparer.cs
- SQLBytes.cs
- DateTimeOffsetAdapter.cs
- XmlDataDocument.cs
- ComplexLine.cs
- SQLMoneyStorage.cs
- HandleRef.cs
- HttpHandler.cs
- LinqDataSourceView.cs
- ActiveDocumentEvent.cs
- TableAdapterManagerMethodGenerator.cs