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
- KeyPullup.cs
- XmlSchemaObject.cs
- ServiceSecurityContext.cs
- TreeWalker.cs
- ListControlConvertEventArgs.cs
- AdPostCacheSubstitution.cs
- TreeIterator.cs
- NetworkInformationException.cs
- DtdParser.cs
- MTConfigUtil.cs
- SafeFindHandle.cs
- RemotingAttributes.cs
- HttpBufferlessInputStream.cs
- PageSetupDialog.cs
- ServiceRouteHandler.cs
- ComplexBindingPropertiesAttribute.cs
- HtmlFormParameterReader.cs
- DBSchemaTable.cs
- TdsParser.cs
- GC.cs
- WmfPlaceableFileHeader.cs
- Wrapper.cs
- Substitution.cs
- FontStyles.cs
- InputChannelBinder.cs
- PresentationSource.cs
- StretchValidation.cs
- AesManaged.cs
- WebPartConnectionsConnectVerb.cs
- ErrorStyle.cs
- MetadataWorkspace.cs
- GregorianCalendar.cs
- SurrogateEncoder.cs
- ClientScriptItem.cs
- Tokenizer.cs
- MetadataSource.cs
- RbTree.cs
- CallbackHandler.cs
- MdImport.cs
- CoreSwitches.cs
- XsdSchemaFileEditor.cs
- RegexCharClass.cs
- WebReferenceCollection.cs
- CryptoStream.cs
- Visual3DCollection.cs
- ListItemConverter.cs
- GB18030Encoding.cs
- WebPartConnectionsCloseVerb.cs
- SystemIPInterfaceStatistics.cs
- HWStack.cs
- MediaContextNotificationWindow.cs
- ConnectionPoolManager.cs
- RelatedView.cs
- RangeValuePatternIdentifiers.cs
- DataGridViewLayoutData.cs
- BoundField.cs
- ProfileInfo.cs
- FormatException.cs
- RotateTransform.cs
- InputLanguage.cs
- GroupItem.cs
- EntityDataReader.cs
- OdbcTransaction.cs
- Style.cs
- DataServiceQueryProvider.cs
- EdmToObjectNamespaceMap.cs
- _ListenerRequestStream.cs
- TextChangedEventArgs.cs
- RoleManagerEventArgs.cs
- listitem.cs
- BindStream.cs
- PropertyTab.cs
- QuotedPrintableStream.cs
- Popup.cs
- NavigationPropertyEmitter.cs
- DataColumnMappingCollection.cs
- FileDetails.cs
- SHA1.cs
- ItemMap.cs
- MimeXmlReflector.cs
- EncodingDataItem.cs
- ViewGenerator.cs
- ColorContext.cs
- DataError.cs
- PartitionedDataSource.cs
- TcpProcessProtocolHandler.cs
- SchemaEntity.cs
- WorkflowInstanceExtensionManager.cs
- CacheSection.cs
- InvalidEnumArgumentException.cs
- XPathNavigator.cs
- MultipartContentParser.cs
- PriorityQueue.cs
- SchemaEntity.cs
- IDReferencePropertyAttribute.cs
- DesignBindingValueUIHandler.cs
- Int16Animation.cs
- X509CertificateTokenFactoryCredential.cs
- ObjectViewListener.cs
- CaseStatement.cs