我有3個實體教師,主題,學年和SchoolYearSubject。 SchoolYear,Teacher and Subject have many SchoolYearSubject。 SchoolYear應該有許多主題,每個主題都有一位教師,所以我使用SchoolYearSubject來存儲這種關係。C#實體框架:減去實體
class Teacher { ICollection<SchoolYearSubject> }
class Subject { ICollection<SchoolYearSubject> }
class SchoolYear { ICollection<SchoolYearSubject> }
class SchoolYearSubject { Teacher, Subject, SchoolYear }
例如: 我們有學年2010年,三個科SA,SB和SC和3位老師TA,TB,TC。
2010年的學年有兩門學科sA和sC,分別是tA和tC,所以它有2個SchoolYearSubject實體,一個參照sA科目和tA老師,一個參加sC科目和tC老師。
我該如何爲每個SchoolYear獲得那些尚未在該SchoolYear中的科目,而不儲存已經在SchoolYear中的科目的當地信息?
我嘗試使用
SchoolYear SchoolYear = (SchoolYear 2010);
Db.Subjects.Except(SchoolYear.SchoolYearSubjects.Select(schoolYearSubject => schoolYearSubject.Subject)).ToList()
但它不工作,導致NotSupportedException異常「無法創建類型‘SchoolYearSubject’的恆定值,只有原始類型('如的Int32,String和Guid')在這方面得到了支持。「如預期。