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
- XmlHierarchyData.cs
- BindingOperations.cs
- ContentWrapperAttribute.cs
- SqlParameterCollection.cs
- TextBoxBase.cs
- BitmapDecoder.cs
- SessionPageStateSection.cs
- SynchronizedDispatch.cs
- ConfigurationManagerInternalFactory.cs
- BindingFormattingDialog.cs
- COM2EnumConverter.cs
- UnknownBitmapDecoder.cs
- GeometryValueSerializer.cs
- XmlSiteMapProvider.cs
- TitleStyle.cs
- ToolStripPanelSelectionGlyph.cs
- FileLogRecordHeader.cs
- ActivitySurrogateSelector.cs
- PlatformCulture.cs
- ResourceDescriptionAttribute.cs
- ping.cs
- SqlDependencyUtils.cs
- DbConnectionHelper.cs
- SourceFilter.cs
- NativeMethods.cs
- GestureRecognizer.cs
- CanExecuteRoutedEventArgs.cs
- Msec.cs
- RenderOptions.cs
- BindingCollection.cs
- TextBox.cs
- BitmapEffectDrawingContextState.cs
- HostedImpersonationContext.cs
- Transform.cs
- ContentDisposition.cs
- TranslateTransform3D.cs
- AdornerDecorator.cs
- XMLSchema.cs
- CommonObjectSecurity.cs
- GrowingArray.cs
- PerformanceCounterLib.cs
- TypeExtension.cs
- TableCell.cs
- ThrowHelper.cs
- CodeSnippetCompileUnit.cs
- CodeTypeParameter.cs
- ChannelManager.cs
- TextBoxBase.cs
- Frame.cs
- Screen.cs
- MessageQueuePermissionAttribute.cs
- MultipleViewPattern.cs
- HtmlControl.cs
- TabControlEvent.cs
- ClientTargetSection.cs
- SafeFileMappingHandle.cs
- SchemaTypeEmitter.cs
- Int32EqualityComparer.cs
- EventRouteFactory.cs
- RouteData.cs
- SecondaryIndexDefinition.cs
- HtmlInputHidden.cs
- FormViewUpdatedEventArgs.cs
- NopReturnReader.cs
- VisualTreeFlattener.cs
- SHA256.cs
- ToolStripProgressBar.cs
- Authorization.cs
- PropertyValidationContext.cs
- Pts.cs
- DesignerAutoFormatCollection.cs
- Label.cs
- SingleKeyFrameCollection.cs
- HttpPostClientProtocol.cs
- DataObjectCopyingEventArgs.cs
- MimeFormatExtensions.cs
- ApplicationManager.cs
- MessagePartDescription.cs
- Native.cs
- DirectionalLight.cs
- ResXResourceWriter.cs
- SessionEndingEventArgs.cs
- WindowsListViewGroupHelper.cs
- WhileDesigner.cs
- TextServicesPropertyRanges.cs
- InternalSafeNativeMethods.cs
- DbDataReader.cs
- BuilderElements.cs
- OdbcConnectionHandle.cs
- NativeMethods.cs
- RuleCache.cs
- XPathItem.cs
- LogSwitch.cs
- EnvironmentPermission.cs
- Debug.cs
- __Filters.cs
- CatalogPartChrome.cs
- ValueSerializerAttribute.cs
- SiteMapNodeItem.cs
- EntityDescriptor.cs