Bagikan melalui


akhir asosiasi

Akhir asosiasi mengidentifikasi jenis entitas di salah satu ujung asosiasi dan jumlah instans jenis entitas yang dapat ada di akhir asosiasi. Akhir asosiasi didefinisikan sebagai bagian dari asosiasi; sebuah asosiasi harus memiliki tepat dua akhir asosiasi. Properti navigasi memungkinkan navigasi dari satu akhir asosiasi ke yang lain.

Definisi akhir asosiasi berisi informasi berikut:

  • Salah satu jenis entitas yang terlibat dalam asosiasi. (Diperlukan)

    Catatan

    Untuk asosiasi tertentu, jenis entitas yang ditentukan untuk setiap akhir asosiasi bisa sama. Ini menciptakan asosiasi mandiri.

  • Sebuah kardinalitas akhir asosiasi yang menunjukkan jumlah instans jenis entitas yang dapat berada di salah satu akhir asosiasi. Kardinalitas ujung asosiasi dapat memiliki nilai satu (1), nol atau satu (0,.1), atau banyak (*).

  • Nama untuk akhir asosiasi. (Opsional)

  • Informasi tentang operasi yang dilakukan pada akhir asosiasi, seperti kaskade pada penghapusan. (Opsional)

Contoh

Diagram di bawah menunjukkan model konseptual dengan dua asosiasi: PublishedBy dan WrittenBy. Akhir asosiasi untuk asosiasi PublishedBy adalah jenis entitas Book dan Publisher. Kardinalitas akhir Publisher adalah satu (1) dan kardinalitas akhir Book adalah banyak (*), menunjukkan bahwa penerbit menerbitkan banyak buku dan buku diterbitkan oleh satu penerbit.

Example model with three entity types

ADO.NET Entity Framework menggunakan bahasa khusus domain (DSL) yang disebut bahasa definisi skema konseptual (CSDL) untuk mendefinisikan model konseptual. CSDL di bawah mendefinisikan asosiasi PublishedBy yang ditunjukkan pada diagram di atas. Perhatikan bahwa jenis, nama, dan kardinalitas setiap akhir asosiasi ditentukan oleh atribut XML (masing-masing atribut Type, Role, dan Multiplicity). Informasi opsional tentang operasi yang dilakukan di akhir ditentukan dalam elemen XML (elemen OnDelete). Dalam hal ini, jika penerbit dihapus, demikian juga semua buku terkait.

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

Lihat juga