Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Common / CommandTrees / DbFunctionCommandTree.cs / 1305376 / DbFunctionCommandTree.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Data.Metadata.Edm; using System.Data.Common.CommandTrees.Internal; using System.Linq; namespace System.Data.Common.CommandTrees { ////// Represents a function invocation expressed as a canonical command tree /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")] public sealed class DbFunctionCommandTree : DbCommandTree { private readonly EdmFunction _edmFunction; private readonly TypeUsage _resultType; private readonly System.Collections.ObjectModel.ReadOnlyCollection_parameterNames; private readonly System.Collections.ObjectModel.ReadOnlyCollection _parameterTypes; /// /// Constructs a new DbFunctionCommandTree that uses the specified metadata workspace, data space and function metadata /// /// The metadata workspace that the command tree should use. /// The logical 'space' that metadata in the expressions used in this command tree must belong to. /// /// /// ////// , or is null /*CQT_PUBLIC_API(*/internal/*)*/ DbFunctionCommandTree(MetadataWorkspace metadata, DataSpace dataSpace, EdmFunction edmFunction, TypeUsage resultType, IEnumerable does not represent a valid data space or /// is a composable function > parameters) : base(metadata, dataSpace) { using (new EntityBid.ScopeAuto(" %d#", this.ObjectId)) { EntityUtil.CheckArgumentNull(edmFunction, "edmFunction"); _edmFunction = edmFunction; _resultType = resultType; List paramNames = new List (); List paramTypes = new List (); if (parameters != null) { foreach (KeyValuePair paramInfo in parameters) { paramNames.Add(paramInfo.Key); paramTypes.Add(paramInfo.Value); } } _parameterNames = paramNames.AsReadOnly(); _parameterTypes = paramTypes.AsReadOnly(); } } /// /// Gets the [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Edm")] public EdmFunction EdmFunction { get { return _edmFunction; } } ///that represents the function to invoke /// /// Gets the result type of the function; currently constrained to be a Collection of /// RowTypes. Unlike typical RowType instance, merely indicates name/type not parameter /// order. /// public TypeUsage ResultType { get { return _resultType; } } internal override DbCommandTreeKind CommandTreeKind { get { return DbCommandTreeKind.Function; } } internal override IEnumerable> GetParameters() { for (int idx = 0; idx < this._parameterNames.Count; idx++) { yield return new KeyValuePair (this._parameterNames[idx], this._parameterTypes[idx]); } } internal override void DumpStructure(ExpressionDumper dumper) { if (this.EdmFunction != null) { dumper.Dump(this.EdmFunction); } } internal override string PrintTree(ExpressionPrinter printer) { return printer.Print(this); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Data.Metadata.Edm; using System.Data.Common.CommandTrees.Internal; using System.Linq; namespace System.Data.Common.CommandTrees { ////// Represents a function invocation expressed as a canonical command tree /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")] public sealed class DbFunctionCommandTree : DbCommandTree { private readonly EdmFunction _edmFunction; private readonly TypeUsage _resultType; private readonly System.Collections.ObjectModel.ReadOnlyCollection_parameterNames; private readonly System.Collections.ObjectModel.ReadOnlyCollection _parameterTypes; /// /// Constructs a new DbFunctionCommandTree that uses the specified metadata workspace, data space and function metadata /// /// The metadata workspace that the command tree should use. /// The logical 'space' that metadata in the expressions used in this command tree must belong to. /// /// /// ////// , or is null /*CQT_PUBLIC_API(*/internal/*)*/ DbFunctionCommandTree(MetadataWorkspace metadata, DataSpace dataSpace, EdmFunction edmFunction, TypeUsage resultType, IEnumerable does not represent a valid data space or /// is a composable function > parameters) : base(metadata, dataSpace) { using (new EntityBid.ScopeAuto(" %d#", this.ObjectId)) { EntityUtil.CheckArgumentNull(edmFunction, "edmFunction"); _edmFunction = edmFunction; _resultType = resultType; List paramNames = new List (); List paramTypes = new List (); if (parameters != null) { foreach (KeyValuePair paramInfo in parameters) { paramNames.Add(paramInfo.Key); paramTypes.Add(paramInfo.Value); } } _parameterNames = paramNames.AsReadOnly(); _parameterTypes = paramTypes.AsReadOnly(); } } /// /// Gets the [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Edm")] public EdmFunction EdmFunction { get { return _edmFunction; } } ///that represents the function to invoke /// /// Gets the result type of the function; currently constrained to be a Collection of /// RowTypes. Unlike typical RowType instance, merely indicates name/type not parameter /// order. /// public TypeUsage ResultType { get { return _resultType; } } internal override DbCommandTreeKind CommandTreeKind { get { return DbCommandTreeKind.Function; } } internal override IEnumerable> GetParameters() { for (int idx = 0; idx < this._parameterNames.Count; idx++) { yield return new KeyValuePair (this._parameterNames[idx], this._parameterTypes[idx]); } } internal override void DumpStructure(ExpressionDumper dumper) { if (this.EdmFunction != null) { dumper.Dump(this.EdmFunction); } } internal override string PrintTree(ExpressionPrinter printer) { return printer.Print(this); } } } // 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
- HtmlInputSubmit.cs
- columnmapkeybuilder.cs
- XmlQueryTypeFactory.cs
- BorderGapMaskConverter.cs
- LexicalChunk.cs
- RelOps.cs
- TrayIconDesigner.cs
- UserControl.cs
- ReferentialConstraint.cs
- XmlBinaryWriter.cs
- ArrayExtension.cs
- ExceptionHelpers.cs
- PtsContext.cs
- SchemaCollectionCompiler.cs
- ColorTranslator.cs
- SchemaReference.cs
- HandleCollector.cs
- InlineCollection.cs
- BridgeDataRecord.cs
- EventHandlerList.cs
- GroupBox.cs
- CorrelationManager.cs
- VoiceObjectToken.cs
- ByteAnimationUsingKeyFrames.cs
- TreeViewDesigner.cs
- InvalidComObjectException.cs
- ListenerElementsCollection.cs
- SHA1Managed.cs
- HandlerMappingMemo.cs
- ConnectionManagementSection.cs
- MapPathBasedVirtualPathProvider.cs
- StreamGeometry.cs
- ConfigViewGenerator.cs
- MemberProjectionIndex.cs
- DynamicQueryableWrapper.cs
- FrameworkElementFactory.cs
- SqlConnectionFactory.cs
- ChannelSinkStacks.cs
- DataGridViewRowPostPaintEventArgs.cs
- QueryFunctions.cs
- ProxyWebPartManager.cs
- TransformedBitmap.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- ClientSponsor.cs
- arc.cs
- IssuanceLicense.cs
- TextComposition.cs
- ApplicationCommands.cs
- CompositeKey.cs
- BitmapScalingModeValidation.cs
- Label.cs
- ProxyWebPart.cs
- NotImplementedException.cs
- OptimizerPatterns.cs
- StylusDevice.cs
- TextProperties.cs
- ListViewPagedDataSource.cs
- NameValueConfigurationElement.cs
- ToolStripOverflow.cs
- SerializeAbsoluteContext.cs
- WindowsSysHeader.cs
- DashStyles.cs
- ControlBuilderAttribute.cs
- DocumentSchemaValidator.cs
- Control.cs
- StreamUpgradeProvider.cs
- CheckBox.cs
- SqlStatistics.cs
- XmlAttributeOverrides.cs
- WebZone.cs
- XhtmlTextWriter.cs
- Viewport2DVisual3D.cs
- PolicyLevel.cs
- CompilerTypeWithParams.cs
- ConfigurationManagerHelperFactory.cs
- MimeBasePart.cs
- printdlgexmarshaler.cs
- TextInfo.cs
- DesignerLoader.cs
- SQLByteStorage.cs
- KnownTypesProvider.cs
- IPEndPoint.cs
- ExpressionLexer.cs
- RuleInfoComparer.cs
- SqlClientPermission.cs
- BasicKeyConstraint.cs
- Privilege.cs
- AnimatedTypeHelpers.cs
- SqlBooleanMismatchVisitor.cs
- DataException.cs
- XmlSchemaParticle.cs
- CodeTypeMemberCollection.cs
- SystemIPInterfaceProperties.cs
- TraceLevelStore.cs
- WizardStepBase.cs
- ProxyWebPartConnectionCollection.cs
- GroupBoxAutomationPeer.cs
- UseAttributeSetsAction.cs
- SynchronousChannelMergeEnumerator.cs
- PtsContext.cs