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
- CollectionView.cs
- HtmlContainerControl.cs
- Setter.cs
- tooltip.cs
- ImmutableObjectAttribute.cs
- TextDocumentView.cs
- XPathMessageFilterTable.cs
- DbDataRecord.cs
- ListViewDeletedEventArgs.cs
- TrackingProfile.cs
- WorkflowElementDialog.cs
- DataGridViewDataErrorEventArgs.cs
- Brushes.cs
- NavigationPropertyEmitter.cs
- ConfigUtil.cs
- CollectionBase.cs
- InternalControlCollection.cs
- SynchronizingStream.cs
- TrackingDataItem.cs
- ListChunk.cs
- NotSupportedException.cs
- Funcletizer.cs
- FixedBufferAttribute.cs
- ColorDialog.cs
- FloaterBaseParagraph.cs
- NamespaceExpr.cs
- ComplusEndpointConfigContainer.cs
- SqlConnectionString.cs
- ContextDataSourceContextData.cs
- CodeCommentStatement.cs
- ControlHelper.cs
- DesignBinding.cs
- SendingRequestEventArgs.cs
- RegexNode.cs
- SmiSettersStream.cs
- ResourceKey.cs
- TextEditorTables.cs
- ProviderIncompatibleException.cs
- ObjectAssociationEndMapping.cs
- ToggleProviderWrapper.cs
- SoapSchemaExporter.cs
- WindowsBrush.cs
- TextFormatterHost.cs
- ArgumentOutOfRangeException.cs
- BevelBitmapEffect.cs
- MethodExpr.cs
- Vector3DCollection.cs
- Pair.cs
- RawStylusInputReport.cs
- StateWorkerRequest.cs
- ResourceDescriptionAttribute.cs
- ProtocolsConfigurationHandler.cs
- DecimalKeyFrameCollection.cs
- EncodingInfo.cs
- ViewManagerAttribute.cs
- RemotingServices.cs
- BStrWrapper.cs
- SystemFonts.cs
- CompareValidator.cs
- DecoderFallbackWithFailureFlag.cs
- Event.cs
- XmlSchemaElement.cs
- SymbolDocumentInfo.cs
- DataSourceHelper.cs
- TypeReference.cs
- DataGridViewImageColumn.cs
- ExpressionNode.cs
- ClientSettingsProvider.cs
- ConfigUtil.cs
- ImageAnimator.cs
- ProtocolsSection.cs
- OracleTimeSpan.cs
- SqlBuilder.cs
- RectangleF.cs
- IPEndPointCollection.cs
- StructuredTypeEmitter.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- DataGridHeaderBorder.cs
- TreeNodeMouseHoverEvent.cs
- IntegerValidator.cs
- XMLUtil.cs
- SoapExtensionTypeElementCollection.cs
- AutomationElementIdentifiers.cs
- Literal.cs
- ConfigurationManagerHelper.cs
- ToolBar.cs
- StatusBarPanelClickEvent.cs
- ItemContainerGenerator.cs
- DateTimeConstantAttribute.cs
- BamlBinaryReader.cs
- HttpHandlersSection.cs
- DBCSCodePageEncoding.cs
- AutomationElementIdentifiers.cs
- HttpWebRequestElement.cs
- NegotiationTokenProvider.cs
- HttpUnhandledOperationInvoker.cs
- NamespaceInfo.cs
- RefType.cs
- ControlTemplate.cs
- controlskin.cs