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
- AlternateView.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- DesignTimeValidationFeature.cs
- ProgressBarRenderer.cs
- NamespaceList.cs
- Dynamic.cs
- LocationEnvironment.cs
- ParserHooks.cs
- embossbitmapeffect.cs
- XmlMemberMapping.cs
- WaitHandle.cs
- WinFormsSpinner.cs
- ActivityMetadata.cs
- DatasetMethodGenerator.cs
- Normalization.cs
- X509CertificateInitiatorClientCredential.cs
- VSWCFServiceContractGenerator.cs
- PbrsForward.cs
- MeasureData.cs
- AggregateNode.cs
- XmlEntityReference.cs
- SafeFindHandle.cs
- MouseWheelEventArgs.cs
- RadioButtonList.cs
- TrackingServices.cs
- Function.cs
- CqlLexerHelpers.cs
- NetworkAddressChange.cs
- XmlDataImplementation.cs
- SqlDataSourceStatusEventArgs.cs
- DataGridViewRow.cs
- ScalarOps.cs
- ClockGroup.cs
- WebServicesInteroperability.cs
- PropertyGeneratedEventArgs.cs
- columnmapkeybuilder.cs
- SafeTokenHandle.cs
- NameGenerator.cs
- DecimalSumAggregationOperator.cs
- ObjectQueryState.cs
- SafeFileMapViewHandle.cs
- FileDialogCustomPlace.cs
- EntitySetBaseCollection.cs
- ListBindableAttribute.cs
- FieldNameLookup.cs
- XmlNamedNodeMap.cs
- ResourceReferenceExpression.cs
- DeferredElementTreeState.cs
- Misc.cs
- AccessDataSource.cs
- ConsoleTraceListener.cs
- ChtmlTextWriter.cs
- CodeDelegateInvokeExpression.cs
- Rijndael.cs
- OciEnlistContext.cs
- FilterableData.cs
- GridEntry.cs
- Soap.cs
- NetSectionGroup.cs
- Utilities.cs
- DeploymentSectionCache.cs
- TextTreeNode.cs
- WebPartConnectionCollection.cs
- ColumnCollection.cs
- uribuilder.cs
- DynamicILGenerator.cs
- TrustVersion.cs
- TdsParserStaticMethods.cs
- ManagementDateTime.cs
- _NegoStream.cs
- TemplatedWizardStep.cs
- SpellCheck.cs
- TitleStyle.cs
- ProvidePropertyAttribute.cs
- MenuItemCollection.cs
- ConfigurationConverterBase.cs
- DbProviderManifest.cs
- IRCollection.cs
- CultureInfoConverter.cs
- MenuItemCollection.cs
- ZoneIdentityPermission.cs
- SqlException.cs
- SecurityCriticalDataForSet.cs
- InvalidDataException.cs
- EntityCommandExecutionException.cs
- LocalBuilder.cs
- UnitySerializationHolder.cs
- XmlNodeList.cs
- StandardOleMarshalObject.cs
- CancellationTokenRegistration.cs
- HttpPostProtocolReflector.cs
- ListViewGroupItemCollection.cs
- IERequestCache.cs
- TableCellAutomationPeer.cs
- GridViewRowEventArgs.cs
- SignatureHelper.cs
- DoubleLinkListEnumerator.cs
- ResXResourceWriter.cs
- BitmapCache.cs
- Math.cs