AssociationAttribute Classe
Definição
Designa uma propriedade para representar uma associação de banco de dados, como uma relação de chave estrangeira.Designates a property to represent a database association, such as a foreign key relationship.
public ref class AssociationAttribute sealed : System::Data::Linq::Mapping::DataAttribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)]
public sealed class AssociationAttribute : System.Data.Linq.Mapping.DataAttribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)>]
type AssociationAttribute = class
inherit DataAttribute
Public NotInheritable Class AssociationAttribute
Inherits DataAttribute
- Herança
- Atributos
Exemplos
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");
}
}
}
Private _Customer As EntityRef(Of Customer)
<Association(Name:="FK_Orders_Customers", Storage:="_Customer", ThisKey:="CustomerID", IsForeignKey:=True)> _
Public Property Customer() As Customer
Get
Return Me._Customer.Entity
End Get
Set(ByVal value As Customer)
Dim previousValue As Customer = Me._Customer.Entity
If (((previousValue Is value) _
= False) _
OrElse (Me._Customer.HasLoadedOrAssignedValue = False)) Then
Me.SendPropertyChanging()
If ((previousValue Is Nothing) _
= False) Then
Me._Customer.Entity = Nothing
previousValue.Orders.Remove(Me)
End If
Me._Customer.Entity = value
If ((value Is Nothing) _
= False) Then
value.Orders.Add(Me)
Me._CustomerID = value.CustomerID
Else
Me._CustomerID = CType(Nothing, String)
End If
Me.SendPropertyChanged("Customer")
End If
End Set
End Property
Comentários
Use esse atributo para representar uma associação em um banco de dados, como a relação entre uma chave estrangeira e uma chave primária.Use this attribute to represent an association in a database, such as the relationship between a foreign key and a primary key.
No exemplo a seguir, a Order classe inclui um AssociationAttribute atributo para associar pedidos a clientes.In the following example, the Order class includes an AssociationAttribute attribute to associate Orders with Customers.
Construtores
| AssociationAttribute() |
Inicializa uma nova instância da classe AssociationAttribute.Initializes a new instance of the AssociationAttribute class. |
Propriedades
| DeleteOnNull |
Quando colocado em uma associação 1:1 cujos membros de chave estrangeira são todos não anuláveis, exclui o objeto quando a associação é definida como nula.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 |
Obtém ou define o comportamento de exclusão de uma associação.Gets or sets delete behavior for an association. |
| IsForeignKey |
Obtém ou define o membro como a chave estrangeira em uma associação que representa uma relação de banco de dados.Gets or sets the member as the foreign key in an association representing a database relationship. |
| IsUnique |
Obtém ou define a indicação de uma restrição de exclusividade na chave estrangeira.Gets or sets the indication of a uniqueness constraint on the foreign key. |
| Name |
Obtém ou define o nome de uma coluna.Gets or sets the name of a column. (Herdado de DataAttribute) |
| OtherKey |
Obtém ou define um ou mais membros da classe de entidade de destino como valores-chave no outro lado da associação.Gets or sets one or more members of the target entity class as key values on the other side of the association. |
| Storage |
Obtém ou define um campo de armazenamento privado para conter o valor de uma coluna.Gets or sets a private storage field to hold the value from a column. (Herdado de DataAttribute) |
| ThisKey |
Designa os membros dessa classe de entidade para representar os valores-chave nesse lado da associação.Gets or sets members of this entity class to represent the key values on this side of the association. |
| TypeId |
Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute.When implemented in a derived class, gets a unique identifier for this Attribute. (Herdado de Attribute) |
Métodos
| Equals(Object) |
Retorna um valor que indica se essa instância é igual a um objeto especificado.Returns a value that indicates whether this instance is equal to a specified object. (Herdado de Attribute) |
| GetHashCode() |
Retorna o código hash para a instância.Returns the hash code for this instance. (Herdado de Attribute) |
| GetType() |
Obtém o Type da instância atual.Gets the Type of the current instance. (Herdado de Object) |
| IsDefaultAttribute() |
Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class. (Herdado de Attribute) |
| Match(Object) |
Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Herdado de Attribute) |
| MemberwiseClone() |
Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object. (Herdado de Object) |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object. (Herdado de Object) |
Implantações explícitas de interface
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição.Maps a set of names to a corresponding set of dispatch identifiers. (Herdado de Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface.Retrieves the type information for an object, which can be used to get the type information for an interface. (Herdado de Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1). (Herdado de Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornece acesso a propriedades e métodos expostos por um objeto.Provides access to properties and methods exposed by an object. (Herdado de Attribute) |