Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWeb / Client / System / Data / Services / Client / DataServiceKeyAttribute.cs / 1305376 / DataServiceKeyAttribute.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Clr Attribute to be annotated on key properties // // // @owner [....], [....] //--------------------------------------------------------------------- namespace System.Data.Services.Common { using System; using System.Collections.ObjectModel; using System.Data.Services.Client; using System.Linq; ////// Attribute to be annotated on key properties /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1019:DefineAccessorsForAttributeArguments", Justification = "Accessors are available for processed input.")] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] public sealed class DataServiceKeyAttribute : System.Attribute { ///Name of the properties that form the key. private readonly ReadOnlyCollectionkeyNames; /// /// Initializes a new instance of DataServiceKey attribute with the property name /// that forms the Key. /// /// Name of the property that form the key for the current type. public DataServiceKeyAttribute(string keyName) { Util.CheckArgumentNull(keyName, "keyName"); Util.CheckArgumentNotEmpty(keyName, "KeyName"); this.keyNames = new ReadOnlyCollection(new string[1] { keyName }); } /// /// Initializes a new instance of DataServiceKey attribute with the list of property names /// that form the key. /// /// Name of the properties that form the key for the current type. [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1062:Validate arguments of public methods", MessageId = "0", Justification = "parameters are validated against null via CheckArgumentNull")] public DataServiceKeyAttribute(params string[] keyNames) { Util.CheckArgumentNull(keyNames, "keyNames"); if (keyNames.Length == 0 || keyNames.Any(f => f == null || f.Length == 0)) { throw Error.Argument(Strings.DSKAttribute_MustSpecifyAtleastOnePropertyName, "keyNames"); } this.keyNames = new ReadOnlyCollection(keyNames); } /// Name of the properties that form the key for the current type. public ReadOnlyCollectionKeyNames { get { return this.keyNames; } } } } // 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
- SchemaTypeEmitter.cs
- ConfigurationSectionCollection.cs
- Line.cs
- UnitySerializationHolder.cs
- SoapInteropTypes.cs
- InputScope.cs
- OleDbPropertySetGuid.cs
- datacache.cs
- DataTransferEventArgs.cs
- Dynamic.cs
- TypeForwardedToAttribute.cs
- TrackingQueryElement.cs
- BoolLiteral.cs
- ItemAutomationPeer.cs
- Debug.cs
- Random.cs
- MaskInputRejectedEventArgs.cs
- PanelDesigner.cs
- OdbcConnectionHandle.cs
- TextDecorations.cs
- ScriptComponentDescriptor.cs
- HtmlInputButton.cs
- OrderedDictionary.cs
- BitmapVisualManager.cs
- SafeArrayTypeMismatchException.cs
- ConnectionConsumerAttribute.cs
- IsolatedStorageSecurityState.cs
- IPipelineRuntime.cs
- Cursor.cs
- ThemeableAttribute.cs
- ApplicationManager.cs
- StrongName.cs
- FixUp.cs
- GPRECTF.cs
- Hyperlink.cs
- DBDataPermissionAttribute.cs
- BufferedGraphicsContext.cs
- UnmanagedMarshal.cs
- MetadataArtifactLoaderFile.cs
- CompressedStack.cs
- WindowsButton.cs
- XmlBufferReader.cs
- Int32Animation.cs
- EncryptedData.cs
- TypeDefinition.cs
- Expression.cs
- SafeRegistryHandle.cs
- RequestCacheValidator.cs
- _Win32.cs
- EnvelopedSignatureTransform.cs
- OleDbEnumerator.cs
- WorkflowInstanceExtensionProvider.cs
- Symbol.cs
- WebBaseEventKeyComparer.cs
- CanonicalFormWriter.cs
- CodePrimitiveExpression.cs
- AssemblyHash.cs
- PageBuildProvider.cs
- SelectedGridItemChangedEvent.cs
- TextFindEngine.cs
- AlignmentYValidation.cs
- Marshal.cs
- DesignerDataParameter.cs
- TraceHandlerErrorFormatter.cs
- ApplicationFileParser.cs
- Storyboard.cs
- PrintPageEvent.cs
- CacheManager.cs
- QueueAccessMode.cs
- dataprotectionpermissionattribute.cs
- IDReferencePropertyAttribute.cs
- ButtonBase.cs
- MultiSelectRootGridEntry.cs
- AssemblyUtil.cs
- KeySplineConverter.cs
- CombinedGeometry.cs
- ValidateNames.cs
- HybridDictionary.cs
- ValueUtilsSmi.cs
- JsonUriDataContract.cs
- GridViewPageEventArgs.cs
- TimerElapsedEvenArgs.cs
- QuaternionIndependentAnimationStorage.cs
- DataTableMapping.cs
- DeflateEmulationStream.cs
- Effect.cs
- EdmRelationshipRoleAttribute.cs
- MoveSizeWinEventHandler.cs
- DecoderExceptionFallback.cs
- BigInt.cs
- WebPartDescriptionCollection.cs
- ImageKeyConverter.cs
- XmlSecureResolver.cs
- TypeCacheManager.cs
- FixedStringLookup.cs
- FontInfo.cs
- DbConnectionStringCommon.cs
- PathFigureCollection.cs
- DocumentViewer.cs
- VectorValueSerializer.cs