Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DLinq / Dlinq / Mapping / Attributes.cs / 1 / Attributes.cs
using System; using System.Collections.Generic; using System.Text; using System.Diagnostics.CodeAnalysis; namespace System.Data.Linq.Mapping { ////// Attribute placed on a method mapped to a User Defined Function. /// [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)] public sealed class FunctionAttribute : Attribute { string name; bool isComposable; public FunctionAttribute() { } public string Name { get { return this.name; } set { this.name = value; } } [SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Composable", Justification="Spelling is correct.")] public bool IsComposable { get { return this.isComposable; } set { this.isComposable = value; } } } ////// This attribute is applied to functions returning multiple result types, /// to declare the possible result types returned from the function. For /// inheritance types, only the root type of the inheritance hierarchy need /// be specified. /// [AttributeUsage(AttributeTargets.Method, AllowMultiple = true)] public sealed class ResultTypeAttribute : Attribute { Type type; public ResultTypeAttribute(Type type) { this.type = type; } [SuppressMessage("Microsoft.Naming", "CA1721:PropertyNamesShouldNotMatchGetMethods", Justification = "The contexts in which this is available are fairly specific.")] public Type Type { get { return this.type; } } } [AttributeUsage(AttributeTargets.Parameter | AttributeTargets.ReturnValue, AllowMultiple = false)] public sealed class ParameterAttribute : Attribute { string name; string dbType; public ParameterAttribute() { } public string Name { get { return this.name; } set { this.name = value; } } [SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db", Justification = "Conforms to legacy spelling.")] public string DbType { get { return this.dbType; } set { this.dbType = value; } } } [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] public sealed class DatabaseAttribute : Attribute { string name; public DatabaseAttribute() { } public string Name { get { return this.name; } set { this.name = value; } } } [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)] public sealed class TableAttribute : Attribute { string name; public TableAttribute() { } public string Name { get { return this.name; } set { this.name = value; } } } ////// Class attribute used to describe an inheritance hierarchy to be mapped. /// For example, /// /// [Table(Name = "People")] /// [InheritanceMapping(Code = "P", Type = typeof(Person), IsDefault=true)] /// [InheritanceMapping(Code = "C", Type = typeof(Customer))] /// [InheritanceMapping(Code = "E", Type = typeof(Employee))] /// class Person { ... } /// /// [AttributeUsage(AttributeTargets.Class, AllowMultiple=true, Inherited = false)] public sealed class InheritanceMappingAttribute : Attribute { private object code; private Type type; private bool isDefault; ////// Discriminator value in store column for this type. /// public object Code { get { return this.code; } set { this.code = value; } } ////// Type to instantiate when Key is matched. /// [SuppressMessage("Microsoft.Naming", "CA1721:PropertyNamesShouldNotMatchGetMethods", Justification="The contexts in which this is available are fairly specific.")] public Type Type { get { return this.type; } set { this.type = value; } } ////// If discriminator value in store column is unrecognized then instantiate this type. /// public bool IsDefault { get { return this.isDefault; } set { this.isDefault = value; } } } public abstract class DataAttribute : Attribute { string name; string storage; protected DataAttribute() { } public string Name { get { return this.name; } set { name = value; } } public string Storage { get { return this.storage; } set { this.storage = value; } } } public enum UpdateCheck { Always, Never, WhenChanged } ////// Used to specify for during insert and update operations when /// a data member should be read back after the operation completes. /// public enum AutoSync { Default = 0, // Automatically choose Always = 1, Never = 2, OnInsert = 3, OnUpdate = 4 } [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property, AllowMultiple = false)] public sealed class ColumnAttribute : DataAttribute { string dbtype; string expression; bool isPrimaryKey; bool isDBGenerated; bool isVersion; bool isDiscriminator; bool canBeNull = true; UpdateCheck check; AutoSync autoSync = AutoSync.Default; bool canBeNullSet = false; public ColumnAttribute() { check = UpdateCheck.Always; } [SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db", Justification="Conforms to legacy spelling.")] public string DbType { get { return this.dbtype; } set { this.dbtype = value; } } public string Expression { get { return this.expression; } set { this.expression = value; } } public bool IsPrimaryKey { get { return this.isPrimaryKey; } set { this.isPrimaryKey = value; } } [SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db", Justification = "Conforms to legacy spelling.")] public bool IsDbGenerated { get { return this.isDBGenerated; } set { this.isDBGenerated = value; } } public bool IsVersion { get { return this.isVersion; } set { this.isVersion = value; } } public UpdateCheck UpdateCheck { get { return this.check; } set { this.check = value; } } public AutoSync AutoSync { get { return this.autoSync; } set { this.autoSync = value; } } public bool IsDiscriminator { get { return this.isDiscriminator; } set { isDiscriminator = value; } } public bool CanBeNull { get {return this.canBeNull;} set { this.canBeNullSet = true; this.canBeNull = value; } } internal bool CanBeNullSet { get {return this.canBeNullSet;} } } [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property, AllowMultiple = false)] public sealed class AssociationAttribute : DataAttribute { string thisKey; string otherKey; bool isUnique; bool isForeignKey; bool deleteOnNull; string deleteRule; public AssociationAttribute() { } public string ThisKey { get { return this.thisKey; } set { this.thisKey = value; } } public string OtherKey { get { return this.otherKey; } set { this.otherKey = value; } } public bool IsUnique { get { return this.isUnique; } set { this.isUnique = value; } } public bool IsForeignKey { get { return this.isForeignKey; } set { this.isForeignKey = value; } } public string DeleteRule { get { return this.deleteRule; } set { this.deleteRule = value; } } public bool DeleteOnNull { get { return this.deleteOnNull; } set { this.deleteOnNull = value; } } } [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] public sealed class ProviderAttribute : Attribute { Type providerType; public ProviderAttribute() { } public ProviderAttribute(Type type) { this.providerType = type; } [SuppressMessage("Microsoft.Naming", "CA1721:PropertyNamesShouldNotMatchGetMethods", Justification = "The contexts in which this is available are fairly specific.")] public Type Type { get { return this.providerType; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Collections.Generic; using System.Text; using System.Diagnostics.CodeAnalysis; namespace System.Data.Linq.Mapping { ////// Attribute placed on a method mapped to a User Defined Function. /// [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)] public sealed class FunctionAttribute : Attribute { string name; bool isComposable; public FunctionAttribute() { } public string Name { get { return this.name; } set { this.name = value; } } [SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Composable", Justification="Spelling is correct.")] public bool IsComposable { get { return this.isComposable; } set { this.isComposable = value; } } } ////// This attribute is applied to functions returning multiple result types, /// to declare the possible result types returned from the function. For /// inheritance types, only the root type of the inheritance hierarchy need /// be specified. /// [AttributeUsage(AttributeTargets.Method, AllowMultiple = true)] public sealed class ResultTypeAttribute : Attribute { Type type; public ResultTypeAttribute(Type type) { this.type = type; } [SuppressMessage("Microsoft.Naming", "CA1721:PropertyNamesShouldNotMatchGetMethods", Justification = "The contexts in which this is available are fairly specific.")] public Type Type { get { return this.type; } } } [AttributeUsage(AttributeTargets.Parameter | AttributeTargets.ReturnValue, AllowMultiple = false)] public sealed class ParameterAttribute : Attribute { string name; string dbType; public ParameterAttribute() { } public string Name { get { return this.name; } set { this.name = value; } } [SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db", Justification = "Conforms to legacy spelling.")] public string DbType { get { return this.dbType; } set { this.dbType = value; } } } [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] public sealed class DatabaseAttribute : Attribute { string name; public DatabaseAttribute() { } public string Name { get { return this.name; } set { this.name = value; } } } [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)] public sealed class TableAttribute : Attribute { string name; public TableAttribute() { } public string Name { get { return this.name; } set { this.name = value; } } } ////// Class attribute used to describe an inheritance hierarchy to be mapped. /// For example, /// /// [Table(Name = "People")] /// [InheritanceMapping(Code = "P", Type = typeof(Person), IsDefault=true)] /// [InheritanceMapping(Code = "C", Type = typeof(Customer))] /// [InheritanceMapping(Code = "E", Type = typeof(Employee))] /// class Person { ... } /// /// [AttributeUsage(AttributeTargets.Class, AllowMultiple=true, Inherited = false)] public sealed class InheritanceMappingAttribute : Attribute { private object code; private Type type; private bool isDefault; ////// Discriminator value in store column for this type. /// public object Code { get { return this.code; } set { this.code = value; } } ////// Type to instantiate when Key is matched. /// [SuppressMessage("Microsoft.Naming", "CA1721:PropertyNamesShouldNotMatchGetMethods", Justification="The contexts in which this is available are fairly specific.")] public Type Type { get { return this.type; } set { this.type = value; } } ////// If discriminator value in store column is unrecognized then instantiate this type. /// public bool IsDefault { get { return this.isDefault; } set { this.isDefault = value; } } } public abstract class DataAttribute : Attribute { string name; string storage; protected DataAttribute() { } public string Name { get { return this.name; } set { name = value; } } public string Storage { get { return this.storage; } set { this.storage = value; } } } public enum UpdateCheck { Always, Never, WhenChanged } ////// Used to specify for during insert and update operations when /// a data member should be read back after the operation completes. /// public enum AutoSync { Default = 0, // Automatically choose Always = 1, Never = 2, OnInsert = 3, OnUpdate = 4 } [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property, AllowMultiple = false)] public sealed class ColumnAttribute : DataAttribute { string dbtype; string expression; bool isPrimaryKey; bool isDBGenerated; bool isVersion; bool isDiscriminator; bool canBeNull = true; UpdateCheck check; AutoSync autoSync = AutoSync.Default; bool canBeNullSet = false; public ColumnAttribute() { check = UpdateCheck.Always; } [SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db", Justification="Conforms to legacy spelling.")] public string DbType { get { return this.dbtype; } set { this.dbtype = value; } } public string Expression { get { return this.expression; } set { this.expression = value; } } public bool IsPrimaryKey { get { return this.isPrimaryKey; } set { this.isPrimaryKey = value; } } [SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db", Justification = "Conforms to legacy spelling.")] public bool IsDbGenerated { get { return this.isDBGenerated; } set { this.isDBGenerated = value; } } public bool IsVersion { get { return this.isVersion; } set { this.isVersion = value; } } public UpdateCheck UpdateCheck { get { return this.check; } set { this.check = value; } } public AutoSync AutoSync { get { return this.autoSync; } set { this.autoSync = value; } } public bool IsDiscriminator { get { return this.isDiscriminator; } set { isDiscriminator = value; } } public bool CanBeNull { get {return this.canBeNull;} set { this.canBeNullSet = true; this.canBeNull = value; } } internal bool CanBeNullSet { get {return this.canBeNullSet;} } } [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property, AllowMultiple = false)] public sealed class AssociationAttribute : DataAttribute { string thisKey; string otherKey; bool isUnique; bool isForeignKey; bool deleteOnNull; string deleteRule; public AssociationAttribute() { } public string ThisKey { get { return this.thisKey; } set { this.thisKey = value; } } public string OtherKey { get { return this.otherKey; } set { this.otherKey = value; } } public bool IsUnique { get { return this.isUnique; } set { this.isUnique = value; } } public bool IsForeignKey { get { return this.isForeignKey; } set { this.isForeignKey = value; } } public string DeleteRule { get { return this.deleteRule; } set { this.deleteRule = value; } } public bool DeleteOnNull { get { return this.deleteOnNull; } set { this.deleteOnNull = value; } } } [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] public sealed class ProviderAttribute : Attribute { Type providerType; public ProviderAttribute() { } public ProviderAttribute(Type type) { this.providerType = type; } [SuppressMessage("Microsoft.Naming", "CA1721:PropertyNamesShouldNotMatchGetMethods", Justification = "The contexts in which this is available are fairly specific.")] public Type Type { get { return this.providerType; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ContainerUIElement3D.cs
- ReplyAdapterChannelListener.cs
- IsolatedStorageException.cs
- HScrollBar.cs
- TimeoutException.cs
- SetStoryboardSpeedRatio.cs
- GridToolTip.cs
- GridErrorDlg.cs
- ClrProviderManifest.cs
- HttpValueCollection.cs
- PenThreadWorker.cs
- XPathPatternParser.cs
- ServerIdentity.cs
- EdmType.cs
- RepeaterCommandEventArgs.cs
- DataGridViewElement.cs
- StylusOverProperty.cs
- util.cs
- OwnerDrawPropertyBag.cs
- NestedContainer.cs
- WebPartConnectionCollection.cs
- Geometry3D.cs
- DependencyProperty.cs
- HijriCalendar.cs
- DocumentViewer.cs
- D3DImage.cs
- LogLogRecord.cs
- JoinElimination.cs
- SynchronizedInputPattern.cs
- XmlRootAttribute.cs
- CodeMethodInvokeExpression.cs
- DataMemberFieldEditor.cs
- Convert.cs
- ContextBase.cs
- XmlSchemaComplexType.cs
- CodeEntryPointMethod.cs
- AllMembershipCondition.cs
- DbParameterHelper.cs
- FixedSOMPageConstructor.cs
- CodeIdentifiers.cs
- TripleDES.cs
- ListControlBoundActionList.cs
- SqlMethodTransformer.cs
- SecurityManager.cs
- EditorPartDesigner.cs
- ElementUtil.cs
- TraceUtils.cs
- ContentIterators.cs
- SqlCommandAsyncResult.cs
- DetailsViewDeletedEventArgs.cs
- IriParsingElement.cs
- externdll.cs
- CodeAttributeArgumentCollection.cs
- WebRequest.cs
- RoleManagerSection.cs
- MaterialGroup.cs
- LineMetrics.cs
- TextLineBreak.cs
- BufferedResponseStream.cs
- StreamResourceInfo.cs
- FontUnitConverter.cs
- FormParameter.cs
- ListViewGroupCollectionEditor.cs
- MessageFilterTable.cs
- FlowDocumentView.cs
- BypassElementCollection.cs
- CopyOnWriteList.cs
- EncoderReplacementFallback.cs
- PerformanceCounterManager.cs
- Evaluator.cs
- SecurityVerifiedMessage.cs
- XPathAxisIterator.cs
- TableCellAutomationPeer.cs
- CodeSubDirectoriesCollection.cs
- BindingParameterCollection.cs
- SourceElementsCollection.cs
- QuaternionConverter.cs
- DbBuffer.cs
- Part.cs
- Mapping.cs
- TrustManagerMoreInformation.cs
- ListViewHitTestInfo.cs
- MetafileHeaderEmf.cs
- SecurityDescriptor.cs
- EmbeddedMailObject.cs
- AssemblyAttributesGoHere.cs
- Compress.cs
- ReadOnlyDataSource.cs
- DbConnectionPoolGroup.cs
- Cursor.cs
- HTMLTextWriter.cs
- NullReferenceException.cs
- CharacterBufferReference.cs
- ContextMarshalException.cs
- XmlSchemaObjectCollection.cs
- TransformGroup.cs
- IsolationInterop.cs
- PartialCachingAttribute.cs
- BufferedWebEventProvider.cs
- MeasureItemEvent.cs