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
- DataSourceControlBuilder.cs
- ComplexType.cs
- UserControlCodeDomTreeGenerator.cs
- RepeaterCommandEventArgs.cs
- FreezableCollection.cs
- BamlStream.cs
- NativeRightsManagementAPIsStructures.cs
- SafeFindHandle.cs
- TextFormattingConverter.cs
- EventLogPermission.cs
- SmiEventSink_DeferedProcessing.cs
- ConnectionManagementElement.cs
- ActivityExecutor.cs
- WebPartDisplayMode.cs
- ChildDocumentBlock.cs
- BookmarkWorkItem.cs
- CodeLabeledStatement.cs
- RegexStringValidator.cs
- DataSourceCacheDurationConverter.cs
- DataFormats.cs
- Error.cs
- ClickablePoint.cs
- SerializationSectionGroup.cs
- FrameworkElementAutomationPeer.cs
- XmlDataSourceNodeDescriptor.cs
- ObjectDataSourceSelectingEventArgs.cs
- ButtonBase.cs
- APCustomTypeDescriptor.cs
- StickyNoteAnnotations.cs
- WizardForm.cs
- DataGridViewCellCancelEventArgs.cs
- PolicyManager.cs
- RegexCapture.cs
- Axis.cs
- ToolStripItemCollection.cs
- ToolStripItemCollection.cs
- ClassValidator.cs
- BindingOperations.cs
- ControlPropertyNameConverter.cs
- TableCellAutomationPeer.cs
- BaseTemplateCodeDomTreeGenerator.cs
- NameValueCollection.cs
- EpmCustomContentSerializer.cs
- QuaternionKeyFrameCollection.cs
- EventDescriptor.cs
- CatchDesigner.xaml.cs
- QuotedStringWriteStateInfo.cs
- GeometryCombineModeValidation.cs
- ControlCollection.cs
- ActivityTypeDesigner.xaml.cs
- SoapEnumAttribute.cs
- InstancePersistenceContext.cs
- SymbolType.cs
- ProviderException.cs
- ErrorHandler.cs
- FixedStringLookup.cs
- UnsafeNativeMethods.cs
- TextSegment.cs
- PointUtil.cs
- ListControl.cs
- ColorConverter.cs
- PeerCollaborationPermission.cs
- MetaModel.cs
- CallbackHandler.cs
- IsolatedStorageFilePermission.cs
- ExtendedPropertiesHandler.cs
- RepeaterItem.cs
- ControlTemplate.cs
- MutexSecurity.cs
- GACMembershipCondition.cs
- IisTraceListener.cs
- ResolveInfo.cs
- DynamicActivityXamlReader.cs
- GenericsInstances.cs
- CollectionBase.cs
- RuntimeResourceSet.cs
- SqlProviderServices.cs
- CookieProtection.cs
- Point3DCollection.cs
- WebDisplayNameAttribute.cs
- MaskedTextProvider.cs
- NativeMethods.cs
- EdmSchemaAttribute.cs
- LockCookie.cs
- TextEffect.cs
- AutomationTextAttribute.cs
- HtmlPanelAdapter.cs
- WindowsListBox.cs
- PackageProperties.cs
- UIElement3D.cs
- MembershipPasswordException.cs
- Timer.cs
- PathSegment.cs
- RouteValueExpressionBuilder.cs
- __TransparentProxy.cs
- QueryTreeBuilder.cs
- TreeNodeConverter.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- HtmlObjectListAdapter.cs
- FileReader.cs