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
- HyperlinkAutomationPeer.cs
- CancellationHandlerDesigner.cs
- MergablePropertyAttribute.cs
- login.cs
- QueryOperator.cs
- EventsTab.cs
- DurableTimerExtension.cs
- ColorConvertedBitmap.cs
- ScriptControlManager.cs
- PageBreakRecord.cs
- NameTable.cs
- WebBrowserBase.cs
- FileDataSourceCache.cs
- TreeWalkHelper.cs
- DriveInfo.cs
- PropertyValueUIItem.cs
- DrawingContextWalker.cs
- DataGridViewCheckBoxCell.cs
- ProtocolViolationException.cs
- GPPOINT.cs
- ValidationSummary.cs
- StickyNoteAnnotations.cs
- CompiledQuery.cs
- GraphicsContext.cs
- GregorianCalendar.cs
- InvokeMethod.cs
- Hashtable.cs
- KeyPressEvent.cs
- CorrelationManager.cs
- TextProviderWrapper.cs
- TextEditorLists.cs
- ASCIIEncoding.cs
- PointConverter.cs
- Activator.cs
- StreamUpdate.cs
- Point3D.cs
- ServiceParser.cs
- TrackingCondition.cs
- HitTestResult.cs
- SpotLight.cs
- RootBrowserWindowAutomationPeer.cs
- HelpKeywordAttribute.cs
- LinkLabelLinkClickedEvent.cs
- ButtonRenderer.cs
- BufferedReceiveElement.cs
- XmlSerializationReader.cs
- ConfigDefinitionUpdates.cs
- XmlSchemaValidator.cs
- FormatException.cs
- BooleanExpr.cs
- WeakEventManager.cs
- ManagementException.cs
- Attachment.cs
- LabelLiteral.cs
- ScriptReference.cs
- DataBoundControlAdapter.cs
- SparseMemoryStream.cs
- XPathArrayIterator.cs
- NgenServicingAttributes.cs
- ToolZone.cs
- XpsImageSerializationService.cs
- OdbcError.cs
- BindableAttribute.cs
- SafeArrayTypeMismatchException.cs
- DbCommandTree.cs
- _FixedSizeReader.cs
- AnnotationAdorner.cs
- ClientBuildManager.cs
- CorePropertiesFilter.cs
- RuntimeResourceSet.cs
- EventMap.cs
- HMAC.cs
- Screen.cs
- ExternalDataExchangeService.cs
- ProjectionPruner.cs
- EditingCommands.cs
- XMLUtil.cs
- FocusTracker.cs
- WinInet.cs
- ClientConfigPaths.cs
- EntityAdapter.cs
- TransformerInfo.cs
- XXXInfos.cs
- SystemMulticastIPAddressInformation.cs
- FlowDocumentScrollViewerAutomationPeer.cs
- ProjectionCamera.cs
- PrimaryKeyTypeConverter.cs
- ArithmeticException.cs
- CopyAttributesAction.cs
- remotingproxy.cs
- NavigationExpr.cs
- LoginDesigner.cs
- BitmapEffectState.cs
- MaskDescriptors.cs
- NotificationContext.cs
- DesignerActionHeaderItem.cs
- TextElement.cs
- PackageFilter.cs
- SystemColors.cs
- TypeUtils.cs