2007-07-21

Die Attributen der Entity Klassen

Table Attribut
Der Table Attribut markiert eine Klasse als Entity Klasse und verknüpft die Klasse mit dem angegebenen Datenbanktabelle.

Beispielcode mit Table Attribut:
[Table(Name = "Production.Product")]

Name (String): Name der Datenbanktabelle.
Wenn Sie den Name Parameter nicht benutzen, wird der Klassename als Datenbanktabellename definiert.

Im obigen Beispiel wurde Production als Schemaname und Product als Datenbanktabelle definiert.


Column Attribut
Der Column Attribut markiert ein Member als Table Column und verknüpft den Member mit dem angegebenen Datenbankfeld.

Beispielcode mit Column Attribut:
[Column(Name = "ProductID", Storage = "_ProductID", DBType = "int", CanBeNull = false, IsDBGenerated = true, IsPrimaryKey = true)]
public int ProductID
{
get { return this._ProductID; }
set { this._ProductID = value; }
}

Name (String): Name des Feldes in der Datenbanktabelle.
Als Defaultwert für diese Eigenschaft wird der Membername genommen, wenn Sie diese Eigenschaft nicht explizit definieren.

Im obigen Beispiel wurde ProductID als Feldname definiert.


Storage (String): Name der private Variable für die Speicherung des Feld Wertes.

Im obigen Beispiel wurde _ProductID als private Variable angegeben.


DBType (String): Gibt den Typ des Datenbankfeldes an. An dieser Eigenschaft werden die Datenbankfeldtypen zugeordnet.

Im Beispiel wurde als int Datenbankfeldtyp angegeben.


CanBeNull (Boolean): Definiert ob das Feld NULL Wert erlaubt oder nicht. Die Default Einstellung für diese Eigenschaft ist true.

Im Beispiel wurde das Feld als NOT NULL definiert.


IsDBGenerated (Boolean): Definiert ob das Feld Werte beinhaltet, welche von der Datenbank aus generiert werden.

Die Default Einstellung für diese Eigenschaft ist true.

Im Beispiel wird das ProductID Feld Wert in der Datenbank erstellt. Daher wird der Eigenschaft den Wert true haben.


IsPrimaryKey (Boolean): Definiert ob das Feld der Primärschlüssel oder ein Teil der Primärschlüssel der definierten Tabelle ist.

Im Beispiel ist das ProductID Feld als Primärschlüssel der Product Tabelle definiert.


IsVersion (Boolean): Definiert den Feld Typ als Timestamp oder Version.
Verwenden Sie diese Eigenschaft, wenn Sie das Feld vom Typ Timestamp oder als Version definiert haben.


Association Attribut
Mit Association Attribut bilden Sie eine Beziehung ab. Wenn Sie in der Datenbank zwischen zwei Tabellen eine Beziehung definiert haben, können Sie diese Beziehung zwischen der Entity Klassen auch definieren.

Beispielcode mit Association Attribut:
In dem folgenden Beispielcode werden die Beziehungen zwischen den Tabellen Product, ProductDocument und Document definiert.

[Association(Name = "FK_ProductDocument_Product_ProductID",
Storage = "_ProductDocuments",
OtherKey = "ProductID",
ThisKey = "ProductID")]

Name (String): Name der Beziehung.

Im obigen Beispiel wurde FK_ProductDocument_Product_ProductID als Name der Beziehung definiert.


Storage (String): Definiert in welches Feld die referenzierte Tabelle gespeichert wird.
Im Beispiel wird die referenzierte Tabelle in das _ProductDocuments Feld gespeichert.


OtherKey (String): Der Schlüssel der referenzierte Tabelle.
Im Beispiel wurde ProductID als Fremdschlüssel definiert.


ThisKey (String): Schlüssel Feld der Tabelle.
Im Beispiel wurde ProductID als Schlüssel definiert.

No comments: