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
- DesignerRegionCollection.cs
- GACMembershipCondition.cs
- DesignerAttribute.cs
- XPathAncestorIterator.cs
- UnsafeMethods.cs
- DataGridView.cs
- DynamicPropertyHolder.cs
- HtmlString.cs
- StylusPointCollection.cs
- DESCryptoServiceProvider.cs
- ToolStripComboBox.cs
- SAPIEngineTypes.cs
- SqlFormatter.cs
- AnonymousIdentificationSection.cs
- ReadOnlyMetadataCollection.cs
- TemplateBindingExtensionConverter.cs
- Model3D.cs
- EmptyEnumerable.cs
- EncryptedHeader.cs
- ExtensionQuery.cs
- BevelBitmapEffect.cs
- XmlDomTextWriter.cs
- EmptyControlCollection.cs
- RadioButton.cs
- SmiContext.cs
- ResourceDescriptionAttribute.cs
- SingleSelectRootGridEntry.cs
- SQLInt64.cs
- DesignerDataConnection.cs
- SubMenuStyle.cs
- Item.cs
- EmbossBitmapEffect.cs
- ComplexObject.cs
- ProviderSettings.cs
- DecoderExceptionFallback.cs
- PropertyInformationCollection.cs
- Lasso.cs
- DataListItemCollection.cs
- SelectedGridItemChangedEvent.cs
- UserControlAutomationPeer.cs
- CertificateManager.cs
- AffineTransform3D.cs
- DriveNotFoundException.cs
- InvalidFilterCriteriaException.cs
- EventItfInfo.cs
- PointLightBase.cs
- XPathBinder.cs
- TraceHandlerErrorFormatter.cs
- MenuEventArgs.cs
- StatusBarItemAutomationPeer.cs
- PenThread.cs
- TemplateBindingExtensionConverter.cs
- SupportingTokenProviderSpecification.cs
- MissingSatelliteAssemblyException.cs
- IDQuery.cs
- XmlParserContext.cs
- TraceListener.cs
- AdjustableArrowCap.cs
- ExpressionVisitorHelpers.cs
- DesignTableCollection.cs
- RSAPKCS1SignatureDeformatter.cs
- PackageDigitalSignature.cs
- DataGridCellClipboardEventArgs.cs
- DrawingImage.cs
- BezierSegment.cs
- XmlMembersMapping.cs
- ConfigurationSettings.cs
- IntegerValidator.cs
- HiddenField.cs
- ScriptManagerProxy.cs
- MapPathBasedVirtualPathProvider.cs
- StrokeFIndices.cs
- WmlControlAdapter.cs
- GeometryValueSerializer.cs
- Int16.cs
- HotSpot.cs
- path.cs
- RowType.cs
- SqlVisitor.cs
- xmlglyphRunInfo.cs
- Point4DValueSerializer.cs
- MatrixValueSerializer.cs
- OleDbCommand.cs
- MailAddressCollection.cs
- ExpressionBuilderContext.cs
- Help.cs
- SchemaManager.cs
- SoapBinding.cs
- CodeCatchClauseCollection.cs
- SqlNotificationEventArgs.cs
- TextEditorLists.cs
- TimerElapsedEvenArgs.cs
- ProxyHwnd.cs
- ServiceMetadataBehavior.cs
- GZipDecoder.cs
- DataView.cs
- TCPClient.cs
- EncodingInfo.cs
- DependsOnAttribute.cs
- ArcSegment.cs