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
- DesignTimeXamlWriter.cs
- UInt64.cs
- TagPrefixInfo.cs
- SchemaImporterExtension.cs
- Point3DCollectionConverter.cs
- Command.cs
- PageSettings.cs
- MaskInputRejectedEventArgs.cs
- __Error.cs
- BasicViewGenerator.cs
- RuleSettingsCollection.cs
- FontStyles.cs
- FontStyleConverter.cs
- DesignerActionUIStateChangeEventArgs.cs
- SqlInternalConnection.cs
- TextRenderingModeValidation.cs
- SafeNativeMethods.cs
- NativeMethods.cs
- ScriptBehaviorDescriptor.cs
- AttachedPropertyMethodSelector.cs
- Base64Encoder.cs
- PersonalizationStateInfo.cs
- DataSourceCache.cs
- PtsPage.cs
- Codec.cs
- SerializerProvider.cs
- SmtpTransport.cs
- StdValidatorsAndConverters.cs
- RegistryDataKey.cs
- GatewayDefinition.cs
- CopyEncoder.cs
- DataMemberListEditor.cs
- BitSet.cs
- SplineKeyFrames.cs
- ControlDesignerState.cs
- GlyphElement.cs
- RolePrincipal.cs
- FocusChangedEventArgs.cs
- ScaleTransform3D.cs
- SspiHelper.cs
- Simplifier.cs
- HttpEncoderUtility.cs
- SymbolMethod.cs
- EventHandlersDesigner.cs
- SimpleRecyclingCache.cs
- StructuralType.cs
- StoreContentChangedEventArgs.cs
- Dump.cs
- StronglyTypedResourceBuilder.cs
- ServiceModelConfigurationSection.cs
- CaseInsensitiveOrdinalStringComparer.cs
- MenuItemStyle.cs
- WebHttpBindingElement.cs
- ProfilePropertyNameValidator.cs
- Floater.cs
- ColumnReorderedEventArgs.cs
- SuppressMessageAttribute.cs
- WpfXamlLoader.cs
- CompilerGlobalScopeAttribute.cs
- ImageCreator.cs
- RtType.cs
- ToolZone.cs
- KeyedCollection.cs
- CodeDelegateInvokeExpression.cs
- PopupEventArgs.cs
- HMACSHA384.cs
- CheckBox.cs
- ReadOnlyDataSourceView.cs
- ConnectionsZone.cs
- UTF8Encoding.cs
- ActivityStatusChangeEventArgs.cs
- ProfilePropertyNameValidator.cs
- JoinCqlBlock.cs
- Matrix.cs
- RestHandlerFactory.cs
- RIPEMD160.cs
- SymLanguageVendor.cs
- DriveInfo.cs
- ScriptingWebServicesSectionGroup.cs
- SingleAnimationUsingKeyFrames.cs
- XLinq.cs
- Activity.cs
- QfeChecker.cs
- NavigationCommands.cs
- AccessorTable.cs
- XpsImageSerializationService.cs
- ErrorActivity.cs
- RequestTimeoutManager.cs
- CommandCollectionEditor.cs
- TextAutomationPeer.cs
- StateMachineWorkflowInstance.cs
- TraceInternal.cs
- VisualTreeHelper.cs
- TextStore.cs
- EtwTrace.cs
- RowType.cs
- ServiceRouteHandler.cs
- XmlEntity.cs
- EnumConverter.cs
- NotificationContext.cs