Aracılığıyla paylaş


ilişkilendirme türü

İlişkilendirme türü (ilişkilendirme olarak da adlandırılır), Varlık Veri Modeli'ndeki (EDM) ilişkileri açıklamaya yönelik temel yapı taşıdır. Kavramsal modelde ilişki, iki varlık türü (ve gibi CustomerOrder) arasındaki ilişkiyi temsil eder. Bir uygulamada, bir ilişkilendirmenin örneği belirli bir ilişkiyi temsil eder (örneğin, bir Customer örneği ile bir Order örneği arasındaki ilişki). İlişkilendirme örnekleri bir ilişkilendirme kümesinde mantıksal olarak gruplandırılır.

İlişkilendirme tanımı aşağıdaki bilgileri içerir:

  • Benzersiz bir ad. (Gerekli)

  • İlişkideki her varlık türü için bir tane olan iki ilişkilendirme sona erer. (Gerekli)

    Uyarı

    İlişkilendirme, ikiden fazla varlık türü arasındaki bir ilişkiyi temsil edemez. Ancak bir ilişkilendirme, her iki ilişki ucunda da aynı varlık türünü tanımlayarak kendine özgü bir ilişki tanımlayabilir.

  • Bilgi tutarlılığı kısıtlaması. (İsteğe bağlı)

Her ilişkilendirme sonu, ilişkilendirmenin bir ucunda olabilecek varlık türü örneklerinin sayısını gösteren bir ilişkilendirme sonu çokluğu belirtmelidir. İlişki sonu çokluğu bir (1), sıfır veya bir (0..1) veya çok (*) değerine sahip olabilir. İlişkilendirmenin bir ucundaki varlık türü örneklerine, bir varlık türünde kullanıma sunulduklarında gezinti özellikleri veya yabancı anahtarlar aracılığıyla erişilebilir. Daha fazla bilgi için bkz . Varlık Veri Modeli: Yabancı Anahtarlar.

Örnek

Aşağıdaki diyagramda iki ilişkilendirmeye sahip kavramsal bir model gösterilmektedir: PublishedBy ve WrittenBy. PublishedBy ilişkisinin uçları Book ve Publisher varlık türleridir. 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.

Üç varlık türüne sahip örnek model

ADO.NET Entity Framework, kavramsal modelleri tanımlamak için kavramsal şema tanım dili (CSDL) adlı etki alanına özgü bir dil (DSL) kullanır. Aşağıdaki CSDL, yukarıdaki diyagramda gösterilen ilişkilendirmeyi tanımlar PublishedBy :

<Association Name="PublishedBy">
      <End Type="BooksModel.Book" Role="Book" Multiplicity="*" />
      <End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" />
    </Association>

Ayrıca bakınız