AssociationAttribute Class
Designates a property to represent a database association, such as a foreign key relationship.
System.Attribute
System.Data.Linq.Mapping.DataAttribute
System.Data.Linq.Mapping.AssociationAttribute
Namespace: System.Data.Linq.Mapping
Assembly: System.Data.Linq (in System.Data.Linq.dll)
The AssociationAttribute type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | DeleteOnNull | When placed on a 1:1 association whose foreign key members are all non-nullable, deletes the object when the association is set to null. |
![]() | DeleteRule | Gets or sets delete behavior for an association. |
![]() | IsForeignKey | Gets or sets the member as the foreign key in an association representing a database relationship. |
![]() | IsUnique | Gets or sets the indication of a uniqueness constraint on the foreign key. |
![]() | Name | Gets or sets the name of a column. (Inherited from DataAttribute.) |
![]() | OtherKey | Gets or sets one or more members of the target entity class as key values on the other side of the association. |
![]() | Storage | Gets or sets a private storage field to hold the value from a column. (Inherited from DataAttribute.) |
![]() | ThisKey | Gets or sets members of this entity class to represent the key values on this side of the association. |
![]() | TypeId | When implemented in a derived class, gets a unique identifier for this Attribute. (Inherited from Attribute.) |
| Name | Description | |
|---|---|---|
![]() | Equals | Infrastructure. Returns a value that indicates whether this instance is equal to a specified object. (Inherited from Attribute.) |
![]() | GetHashCode | Returns the hash code for this instance. (Inherited from Attribute.) |
![]() | 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 | When overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Inherited from Attribute.) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
| Name | Description | |
|---|---|---|
![]() ![]() | _Attribute.GetIDsOfNames | Maps a set of names to a corresponding set of dispatch identifiers. (Inherited from Attribute.) |
![]() ![]() | _Attribute.GetTypeInfo | Retrieves the type information for an object, which can be used to get the type information for an interface. (Inherited from Attribute.) |
![]() ![]() | _Attribute.GetTypeInfoCount | Retrieves the number of type information interfaces that an object provides (either 0 or 1). (Inherited from Attribute.) |
![]() ![]() | _Attribute.Invoke | Provides access to properties and methods exposed by an object. (Inherited from Attribute.) |
Use this attribute to represent an association in a database, such as the relationship between a foreign key and a primary key.
In the following example, the Order class includes an AssociationAttribute attribute to associate Orders with Customers.
private EntityRef<Customer> _Customer;
// ...
[Association(Name="FK_Orders_Customers", Storage="_Customer", ThisKey="CustomerID", IsForeignKey=true)]
public Customer Customer
{
get
{
return this._Customer.Entity;
}
set
{
Customer previousValue = this._Customer.Entity;
if (((previousValue != value)
|| (this._Customer.HasLoadedOrAssignedValue == false)))
{
this.SendPropertyChanging();
if ((previousValue != null))
{
this._Customer.Entity = null;
previousValue.Orders.Remove(this);
}
this._Customer.Entity = value;
if ((value != null))
{
value.Orders.Add(this);
this._CustomerID = value.CustomerID;
}
else
{
this._CustomerID = default(string);
}
this.SendPropertyChanged("Customer");
}
}
}
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
