Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HttpClientCertificate.cs
- GradientBrush.cs
- SortedList.cs
- FileFormatException.cs
- Transactions.cs
- RuleSet.cs
- ResXDataNode.cs
- FixedTextPointer.cs
- VideoDrawing.cs
- ByteKeyFrameCollection.cs
- MaterialGroup.cs
- _HeaderInfoTable.cs
- DataSourceUtil.cs
- ObjectStateFormatter.cs
- CheckoutException.cs
- RouteUrlExpressionBuilder.cs
- DetailsViewAutoFormat.cs
- QilStrConcatenator.cs
- AutomationTextAttribute.cs
- Random.cs
- LogReservationCollection.cs
- SimpleWebHandlerParser.cs
- UDPClient.cs
- ListViewHitTestInfo.cs
- CodeIndexerExpression.cs
- ObjectStateEntryDbDataRecord.cs
- WebConfigurationHostFileChange.cs
- DictionarySectionHandler.cs
- Evidence.cs
- NestPullup.cs
- RequestStatusBarUpdateEventArgs.cs
- SystemSounds.cs
- NativeMethods.cs
- XmlCharType.cs
- DrawingAttributes.cs
- FloaterBaseParagraph.cs
- FixedHighlight.cs
- KeyPressEvent.cs
- ArcSegment.cs
- TextBox.cs
- SecurityIdentifierElementCollection.cs
- safesecurityhelperavalon.cs
- GiveFeedbackEvent.cs
- StatusBarAutomationPeer.cs
- EndOfStreamException.cs
- MultiView.cs
- WaitForChangedResult.cs
- EndEvent.cs
- RemotingException.cs
- StateDesigner.LayoutSelectionGlyph.cs
- VirtualizingStackPanel.cs
- AnnotationResource.cs
- propertytag.cs
- PrimitiveType.cs
- CompareInfo.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- HttpException.cs
- BaseDataListDesigner.cs
- SchemaElementLookUpTableEnumerator.cs
- ColumnResult.cs
- TypeBrowser.xaml.cs
- WebHttpElement.cs
- XPathNavigator.cs
- LongCountAggregationOperator.cs
- ReadOnlyPropertyMetadata.cs
- DESCryptoServiceProvider.cs
- XmlSchemaType.cs
- HttpBufferlessInputStream.cs
- ContextStaticAttribute.cs
- SQLGuid.cs
- KeyEventArgs.cs
- Context.cs
- DefaultSerializationProviderAttribute.cs
- CodeMemberMethod.cs
- MultiView.cs
- _AuthenticationState.cs
- ButtonBase.cs
- ButtonBaseAdapter.cs
- ExpressionParser.cs
- ClientSideProviderDescription.cs
- ButtonBaseAutomationPeer.cs
- FunctionImportMapping.cs
- CompiledAction.cs
- PackageProperties.cs
- SQLMoney.cs
- mediaeventshelper.cs
- ResolveMatchesApril2005.cs
- DeploymentSectionCache.cs
- PipeStream.cs
- infer.cs
- BrowserTree.cs
- ListViewDataItem.cs
- OneOfConst.cs
- sqlstateclientmanager.cs
- Formatter.cs
- XmlReaderDelegator.cs
- CodeNamespaceCollection.cs
- RawStylusInputCustomDataList.cs
- XmlNode.cs
- ImageMap.cs