Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Metadata / Edm / FunctionParameter.cs / 1305376 / FunctionParameter.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Diagnostics; using System.Text; namespace System.Data.Metadata.Edm { ////// Class representing a function parameter /// public sealed class FunctionParameter : MetadataItem { internal static Func> DeclaringFunctionLinker = fp => fp._declaringFunction; #region Constructors /// /// The constructor for FunctionParameter taking in a name and a TypeUsage object /// /// The name of this FunctionParameter /// The TypeUsage describing the type of this FunctionParameter /// Mode of the parameter ///Thrown if name or typeUsage arguments are null ///Thrown if name argument is empty string internal FunctionParameter(string name, TypeUsage typeUsage, ParameterMode parameterMode) { EntityUtil.CheckStringArgument(name, "name"); EntityUtil.GenericCheckArgumentNull(typeUsage, "typeUsage"); _name = name; _typeUsage = typeUsage; SetParameterMode(parameterMode); } #endregion #region Fields private readonly TypeUsage _typeUsage; private readonly string _name; private readonly SafeLink_declaringFunction = new SafeLink (); #endregion #region Properties /// /// Returns the kind of the type /// public override BuiltInTypeKind BuiltInTypeKind { get { return BuiltInTypeKind.FunctionParameter; } } ////// Gets/Sets the mode of this parameter /// ///Thrown if value passed into setter is null ///Thrown if the FunctionParameter instance is in ReadOnly state [MetadataProperty(BuiltInTypeKind.ParameterMode, false)] public ParameterMode Mode { get { return GetParameterMode(); } } ////// Returns the identity of the member /// internal override string Identity { get { return _name; } } ////// Returns the name of the member /// [MetadataProperty(PrimitiveTypeKind.String, false)] public String Name { get { return _name; } } ////// Returns the TypeUsage object containing the type information and facets /// about the type /// [MetadataProperty(BuiltInTypeKind.TypeUsage, false)] public TypeUsage TypeUsage { get { return _typeUsage; } } ////// Returns the declaring function of this parameter /// public EdmFunction DeclaringFunction { get { return _declaringFunction.Value; } } #endregion #region Methods ////// Overriding System.Object.ToString to provide better String representation /// for this type. /// public override string ToString() { return Name; } ////// Sets the member to read only mode. Once this is done, there are no changes /// that can be done to this class /// internal override void SetReadOnly() { if (!IsReadOnly) { base.SetReadOnly(); // TypeUsage is always readonly, no reason to set it } } #endregion } } // 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
- SoapMessage.cs
- Variable.cs
- CharEnumerator.cs
- PersistChildrenAttribute.cs
- StylusPlugInCollection.cs
- DataPointer.cs
- DbParameterCollectionHelper.cs
- TextWriter.cs
- PartitionResolver.cs
- UnsafeNativeMethods.cs
- XmlDataSource.cs
- RemoteCryptoTokenProvider.cs
- SByteConverter.cs
- ListenerConnectionModeReader.cs
- WindowsFormsHostAutomationPeer.cs
- AgileSafeNativeMemoryHandle.cs
- CustomValidator.cs
- DataServiceException.cs
- Array.cs
- UnsafeNativeMethodsPenimc.cs
- ExtensionSurface.cs
- FixUpCollection.cs
- TextAutomationPeer.cs
- CodeGenerator.cs
- StructuredType.cs
- PeerNameRegistration.cs
- LongValidator.cs
- CookieProtection.cs
- RegularExpressionValidator.cs
- ColumnResizeUndoUnit.cs
- KeyFrames.cs
- panel.cs
- DiscreteKeyFrames.cs
- mediaeventargs.cs
- FlowPosition.cs
- GenericWebPart.cs
- XmlHierarchyData.cs
- IxmlLineInfo.cs
- SyndicationContent.cs
- ServiceRouteHandler.cs
- BrowserTree.cs
- LifetimeServices.cs
- InputLanguageEventArgs.cs
- EdmProviderManifest.cs
- EditingScopeUndoUnit.cs
- SqlDataSourceView.cs
- Expander.cs
- SwitchElementsCollection.cs
- SolidBrush.cs
- StrokeCollectionConverter.cs
- PeerTransportElement.cs
- SHA512.cs
- TextParaLineResult.cs
- XmlSerializerFactory.cs
- QuadraticBezierSegment.cs
- XmlDataSourceNodeDescriptor.cs
- ToolBarButton.cs
- EtwTrace.cs
- StorageEntityContainerMapping.cs
- sqlnorm.cs
- Metadata.cs
- safex509handles.cs
- TypeName.cs
- RSAPKCS1KeyExchangeFormatter.cs
- StorageSetMapping.cs
- TimeSpanStorage.cs
- KeyGestureValueSerializer.cs
- ServiceHostingEnvironment.cs
- StoreAnnotationsMap.cs
- XPathPatternBuilder.cs
- Model3DGroup.cs
- TemplatedAdorner.cs
- EnumerableRowCollectionExtensions.cs
- SqlBooleanMismatchVisitor.cs
- EntityDataSourceWrapper.cs
- VerbConverter.cs
- TimeSpan.cs
- AutoFocusStyle.xaml.cs
- DataGridTextColumn.cs
- TemplateInstanceAttribute.cs
- CodeDirectionExpression.cs
- COM2PropertyPageUITypeConverter.cs
- MergeEnumerator.cs
- CompressEmulationStream.cs
- BooleanAnimationBase.cs
- LoginUtil.cs
- ComplexLine.cs
- ColumnResizeUndoUnit.cs
- DocumentationServerProtocol.cs
- TextRenderer.cs
- SyndicationDeserializer.cs
- counter.cs
- ResourceReferenceKeyNotFoundException.cs
- X509Extension.cs
- SqlUserDefinedAggregateAttribute.cs
- ResourceDescriptionAttribute.cs
- ChildDocumentBlock.cs
- BulletedList.cs
- MenuStrip.cs
- ToolboxItemFilterAttribute.cs