Dalam istilah entitas (atau objek) Anda memiliki Classobjek yang memiliki koleksi Studentsdan Studentobjek yang memiliki koleksi Classes. Karena StudentClasstabel Anda hanya berisi Id dan tidak ada informasi tambahan, EF tidak menghasilkan entitas untuk tabel penggabungan. Itu adalah perilaku yang benar dan itulah yang Anda harapkan.
Sekarang, ketika melakukan penyisipan atau pembaruan, cobalah untuk berpikir dalam kerangka objek. Misalnya jika Anda ingin memasukkan kelas dengan dua siswa, buat Classobjek, Studentobjek, tambahkan siswa ke Studentskoleksi kelas tambahkan Classobjek ke konteks dan panggil SaveChanges:
using (var context = new YourContext())
{
var mathClass = new Class { Name = "Math" };
mathClass.Students.Add(new Student { Name = "Alice" });
mathClass.Students.Add(new Student { Name = "Bob" });
context.AddToClasses(mathClass);
context.SaveChanges();
}
Ini akan membuat entri di Classtabel, dua entri di Studenttabel dan dua entri di StudentClasstabel yang menghubungkan keduanya.
Anda pada dasarnya melakukan hal yang sama untuk pembaruan. Ambil saja datanya, ubah grafik dengan menambahkan dan menghapus objek dari koleksi, panggil SaveChanges. Periksa pertanyaan serupa ini untuk detailnya.
Edit :
Menurut komentar Anda, Anda perlu memasukkan yang baru Classdan menambahkan dua yang sudah ada Students:
using (var context = new YourContext())
{
var mathClass= new Class { Name = "Math" };
Student student1 = context.Students.FirstOrDefault(s => s.Name == "Alice");
Student student2 = context.Students.FirstOrDefault(s => s.Name == "Bob");
mathClass.Students.Add(student1);
mathClass.Students.Add(student2);
context.AddToClasses(mathClass);
context.SaveChanges();
}
Karena kedua siswa sudah ada dalam database, mereka tidak akan disisipkan, tetapi karena mereka sekarang berada dalam Studentskumpulan Class, dua entri akan disisipkan ke dalam StudentClasstabel.