DataObjectFieldAttribute Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Provides metadata for a property representing a data field. This class cannot be inherited.
public ref class DataObjectFieldAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Property)]
public sealed class DataObjectFieldAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Property)>]
type DataObjectFieldAttribute = class
inherit Attribute
Public NotInheritable Class DataObjectFieldAttribute
Inherits Attribute
- Inheritance
- Attributes
Examples
The following code example demonstrates how you can apply the DataObjectFieldAttribute to a publicly exposed property to identify metadata associated with the property. In this example the NorthwindEmployee
type exposes three data properties: EmployeeID
, FirstName
, and LastName
. The DataObjectFieldAttribute attribute is applied to all three properties; however, only the EmployeeID
property attribute indicates it is the primary key for the data row.
public class NorthwindEmployee
{
public NorthwindEmployee() { }
private int _employeeID;
[DataObjectFieldAttribute(true, true, false)]
public int EmployeeID
{
get { return _employeeID; }
set { _employeeID = value; }
}
private string _firstName = String.Empty;
[DataObjectFieldAttribute(false, false, true)]
public string FirstName
{
get { return _firstName; }
set { _firstName = value; }
}
private string _lastName = String.Empty;
[DataObjectFieldAttribute(false, false, true)]
public string LastName
{
get { return _lastName; }
set { _lastName = value; }
}
}
Public Class NorthwindEmployee
Public Sub New()
End Sub
Private _employeeID As Integer
<DataObjectFieldAttribute(True, True, False)> _
Public Property EmployeeID() As Integer
Get
Return _employeeID
End Get
Set(ByVal value As Integer)
_employeeID = value
End Set
End Property
Private _firstName As String = String.Empty
<DataObjectFieldAttribute(False, False, False)> _
Public Property FirstName() As String
Get
Return _firstName
End Get
Set(ByVal value As String)
_firstName = value
End Set
End Property
Private _lastName As String = String.Empty
<DataObjectFieldAttribute(False, False, False)> _
Public Property LastName() As String
Get
Return _lastName
End Get
Set(ByVal value As String)
_lastName = value
End Set
End Property
End Class
Remarks
Use the DataObjectFieldAttribute attribute to provide information about the schema of the underlying data. Design-time classes such as the ObjectDataSourceDesigner class use the DataObjectAttribute attribute to set properties at design-time based on the exposed schema.
You apply the DataObjectFieldAttribute attribute to members of the data item objects that are returned by the Select method of an object marked with the DataObjectAttribute attribute. In the following example, the NorthwindData
class is marked with the DataObjectAttribute attribute, and returns an IEnumerable object containing NorthwindEmployee
objects from the GetAllEmployees
method. Fields in the NorthwindEmployee
class are marked with the DataObjectFieldAttribute attribute to indicate they represent data fields in the underlying data source.
For more information about using attributes, see Attributes.
Constructors
DataObjectFieldAttribute(Boolean) |
Initializes a new instance of the DataObjectFieldAttribute class and indicates whether the field is the primary key for the data row. |
DataObjectFieldAttribute(Boolean, Boolean) |
Initializes a new instance of the DataObjectFieldAttribute class and indicates whether the field is the primary key for the data row, and whether the field is a database identity field. |
DataObjectFieldAttribute(Boolean, Boolean, Boolean) |
Initializes a new instance of the DataObjectFieldAttribute class and indicates whether the field is the primary key for the data row, whether the field is a database identity field, and whether the field can be null. |
DataObjectFieldAttribute(Boolean, Boolean, Boolean, Int32) |
Initializes a new instance of the DataObjectFieldAttribute class and indicates whether the field is the primary key for the data row, whether it is a database identity field, and whether it can be null and sets the length of the field. |
Properties
IsIdentity |
Gets a value indicating whether a property represents an identity field in the underlying data. |
IsNullable |
Gets a value indicating whether a property represents a field that can be null in the underlying data store. |
Length |
Gets the length of the property in bytes. |
PrimaryKey |
Gets a value indicating whether a property is in the primary key in the underlying data. |
TypeId |
When implemented in a derived class, gets a unique identifier for this Attribute. (Inherited from Attribute) |
Methods
Equals(Object) |
Returns a value indicating whether this instance is equal to a specified object. |
GetHashCode() |
Returns the hash code for this instance. |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
IsDefaultAttribute() |
When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class. (Inherited from Attribute) |
Match(Object) |
When overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Inherited from Attribute) |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
ToString() |
Returns a string that represents the current object. (Inherited from Object) |
Explicit Interface Implementations
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Maps a set of names to a corresponding set of dispatch identifiers. (Inherited from Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Retrieves the type information for an object, which can be used to get the type information for an interface. (Inherited from Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Retrieves the number of type information interfaces that an object provides (either 0 or 1). (Inherited from Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Provides access to properties and methods exposed by an object. (Inherited from Attribute) |