association end
İlişkilendirme ucu , bir ilişkilendirmenin bir ucundaki varlık türünü ve bir ilişkilendirmenin sonunda var olabilecek varlık türü örneklerinin sayısını tanımlar. İlişkilendirme uçları bir ilişkilendirmenin parçası olarak tanımlanır; bir ilişkilendirmenin tam olarak iki ilişkisi bitmelidir. Gezinti özellikleri , bir ilişkilendirme ucundan diğerine gezintiye olanak sağlar.
İlişkilendirme bitiş tanımı aşağıdaki bilgileri içerir:
İlişkilendirmeye dahil olan varlık türlerinden biri. (Gerekli)
Not
Belirli bir ilişkilendirme için, her ilişkilendirme sonu için belirtilen varlık türü aynı olabilir. Bu, bir kendi kendine ilişkilendirme oluşturur.
İlişkilendirmenin bir ucunda bulunabilecek varlık türü örneklerinin sayısını gösteren ilişkilendirme sonu çokluğu . İlişki sonu çokluğu bir (1), sıfır veya bir (0..1) veya çok (*) değerine sahip olabilir.
İlişkilendirme sonu için bir ad. (İsteğe bağlı)
İlişkilendirme ucunda gerçekleştirilen işlemler hakkında bilgi, örneğin silmede art arda ekleme. (İsteğe bağlı)
Örnek
Aşağıdaki diyagramda iki ilişkilendirmeye sahip kavramsal bir model gösterilmektedir: PublishedBy
ve WrittenBy
. İlişkilendirme için PublishedBy
ilişkilendirme uçları ve Publisher
varlık türleridirBook
. Sonun Publisher
çokluğu birdir (1) ve sonun Book
çokluğu çok (*) olur, bu da yayıncının çok sayıda kitap yayımladığını ve bir kitabın bir yayıncı tarafından yayımlandığını gösterir.
ADO.NET Entity Framework, kavramsal modelleri tanımlamak için kavramsal şema tanım dili (CSDL) olarak adlandırılan etki alanına özgü bir dil (DSL) kullanır. Aşağıdaki CSDL, yukarıdaki diyagramda gösterilen ilişkilendirmeyi tanımlar PublishedBy
. Her ilişkilendirme sonunun türü, adı ve çokluğunun XML öznitelikleri ( Type
sırasıyla , Role
ve Multiplicity
öznitelikleri) tarafından belirtildiğini unutmayın. Bir uçta gerçekleştirilen işlemler hakkında isteğe bağlı bilgiler bir XML öğesinde ( OnDelete
öğesi) belirtilir. Bu durumda, bir yayımcı silinirse, ilişkili tüm kitaplar da silinir.
<Association Name="PublishedBy">
<End Type="BooksModel.Book" Role="Book" Multiplicity="*" />
<End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" >
<OnDelete Action="Cascade" />
</End>
</Association>