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
- PageThemeCodeDomTreeGenerator.cs
- KeyedByTypeCollection.cs
- PageThemeBuildProvider.cs
- VersionPair.cs
- AndMessageFilterTable.cs
- MemberDescriptor.cs
- MediaContextNotificationWindow.cs
- Unit.cs
- SerializationStore.cs
- DataGridViewCell.cs
- TextFormatterContext.cs
- VirtualPathProvider.cs
- ISessionStateStore.cs
- PartialCachingControl.cs
- UnitySerializationHolder.cs
- XsdValidatingReader.cs
- XPathParser.cs
- GeneralTransformCollection.cs
- CodeArrayCreateExpression.cs
- ObjectDataSourceStatusEventArgs.cs
- DesignerTransaction.cs
- ToolBarTray.cs
- SqlDataSource.cs
- TearOffProxy.cs
- MultiTouchSystemGestureLogic.cs
- SqlConnection.cs
- OleDbDataReader.cs
- HwndStylusInputProvider.cs
- AdapterDictionary.cs
- SqlTypeSystemProvider.cs
- CodeComment.cs
- KeyValueInternalCollection.cs
- CursorConverter.cs
- SparseMemoryStream.cs
- InvalidTimeZoneException.cs
- ObjectParameterCollection.cs
- DataGridViewSelectedRowCollection.cs
- OracleRowUpdatingEventArgs.cs
- ObjectComplexPropertyMapping.cs
- FocusChangedEventArgs.cs
- ValidatorAttribute.cs
- ExpressionEditorAttribute.cs
- BypassElementCollection.cs
- ArglessEventHandlerProxy.cs
- ExpandedWrapper.cs
- ConfigPathUtility.cs
- Dictionary.cs
- JournalEntry.cs
- CodeCatchClauseCollection.cs
- HttpStreamMessageEncoderFactory.cs
- FlowSwitch.cs
- DataControlImageButton.cs
- GetCardDetailsRequest.cs
- AsyncStreamReader.cs
- VectorAnimationUsingKeyFrames.cs
- ManagementObjectCollection.cs
- CreateUserWizardStep.cs
- StatusBarDrawItemEvent.cs
- Win32PrintDialog.cs
- StubHelpers.cs
- MenuEventArgs.cs
- InfoCardSchemas.cs
- BatchWriter.cs
- CheckedListBox.cs
- ByteStreamGeometryContext.cs
- TabControl.cs
- TreeNodeMouseHoverEvent.cs
- InstallerTypeAttribute.cs
- SqlInternalConnection.cs
- Label.cs
- ResolvePPIDRequest.cs
- RijndaelManaged.cs
- RegexParser.cs
- ComAdminInterfaces.cs
- XhtmlBasicPageAdapter.cs
- OrderedHashRepartitionStream.cs
- XmlDataDocument.cs
- ControlLocalizer.cs
- BamlResourceDeserializer.cs
- FieldBuilder.cs
- IndependentlyAnimatedPropertyMetadata.cs
- BamlStream.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- DesignerForm.cs
- UnaryOperationBinder.cs
- XPathAxisIterator.cs
- CodePropertyReferenceExpression.cs
- SubMenuStyleCollection.cs
- ClientEventManager.cs
- SimplePropertyEntry.cs
- DataGridViewSelectedColumnCollection.cs
- HttpWriter.cs
- TreeViewBindingsEditor.cs
- httpserverutility.cs
- BitmapEffectvisualstate.cs
- JsonFormatReaderGenerator.cs
- BamlBinaryReader.cs
- ContentPlaceHolder.cs
- ResourceAssociationSet.cs
- TextSelectionHelper.cs