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
- WindowsRichEditRange.cs
- shaperfactory.cs
- WindowsStreamSecurityUpgradeProvider.cs
- EntityClientCacheEntry.cs
- RenamedEventArgs.cs
- SqlProfileProvider.cs
- ExternalDataExchangeService.cs
- Helpers.cs
- SynchronizationContext.cs
- DocumentViewer.cs
- WindowManager.cs
- XmlUtf8RawTextWriter.cs
- Type.cs
- ItemsControl.cs
- ManagementBaseObject.cs
- ExpressionParser.cs
- XmlCharType.cs
- ZeroOpNode.cs
- Item.cs
- GradientStop.cs
- SessionIDManager.cs
- Stacktrace.cs
- DataSvcMapFileSerializer.cs
- FormsIdentity.cs
- _HelperAsyncResults.cs
- IxmlLineInfo.cs
- ListViewHitTestInfo.cs
- BitmapEffectState.cs
- precedingsibling.cs
- StyleXamlParser.cs
- OleDbWrapper.cs
- COAUTHIDENTITY.cs
- GeneratedCodeAttribute.cs
- TreeSet.cs
- SafeEventLogWriteHandle.cs
- MemberRelationshipService.cs
- ReflectionTypeLoadException.cs
- IndentedWriter.cs
- ReferentialConstraintRoleElement.cs
- BamlBinaryReader.cs
- PathFigureCollection.cs
- itemelement.cs
- HtmlTableCell.cs
- ProofTokenCryptoHandle.cs
- XmlDocumentSurrogate.cs
- CngProperty.cs
- DecoderFallbackWithFailureFlag.cs
- IdentityNotMappedException.cs
- AstTree.cs
- SerialReceived.cs
- MultiViewDesigner.cs
- TypeElement.cs
- xml.cs
- TemplateInstanceAttribute.cs
- WSFederationHttpBindingElement.cs
- DataReaderContainer.cs
- CodeSubDirectory.cs
- HtmlTableCell.cs
- EnvelopedSignatureTransform.cs
- TextSelectionHighlightLayer.cs
- PrintPreviewDialog.cs
- WebPartConnectionsEventArgs.cs
- QilGeneratorEnv.cs
- ProviderConnectionPoint.cs
- CngProperty.cs
- UnmanagedMemoryStreamWrapper.cs
- DataSourceComponent.cs
- HtmlButton.cs
- AdornerDecorator.cs
- XamlStyleSerializer.cs
- RightsManagementPermission.cs
- RequestResizeEvent.cs
- ExpressionBuilder.cs
- LambdaCompiler.Binary.cs
- SpeakInfo.cs
- BackgroundWorker.cs
- MarginCollapsingState.cs
- webbrowsersite.cs
- MetabaseServerConfig.cs
- BrowserTree.cs
- AncillaryOps.cs
- CellParaClient.cs
- HostingPreferredMapPath.cs
- GeneratedContractType.cs
- EntityReference.cs
- Region.cs
- HttpFileCollection.cs
- WebPartsPersonalization.cs
- FloatUtil.cs
- WinFormsComponentEditor.cs
- UDPClient.cs
- SelectionService.cs
- IdentityHolder.cs
- DataGridViewCellFormattingEventArgs.cs
- RowParagraph.cs
- Events.cs
- ExtenderControl.cs
- OutputScope.cs
- TdsParser.cs
- ProfilePropertySettingsCollection.cs