このスキーマのデータベースがありますが、従業員と診療所の両方にTimeSlotsのリストを追加することはできますか?はいの場合、そのマッピングの構成は何ですか。
ありがとう
このスキーマのデータベースがありますが、従業員と診療所の両方にTimeSlotsのリストを追加することはできますか?はいの場合、そのマッピングの構成は何ですか。
ありがとう
いいえ、ナビゲーション プロパティClientEmployee
を含むエンティティが必要です。inエンティティが必要なTimeSlots
場合は、related にアクセスするマップされていないプロパティを介してのみ実現できます。TimeSlots
Employee
Clinic
ClientEmployee
// This is from Employee or Clinic class
[NotMapped]
public IEnumerable<TimeSlot> TimeSlots
{
get
{
// ClientEmployees is mapped navigation property
return ClientEmployees.SelectMany(ce => ce.TimeSlots);
}
}
問題が見えますか?複数の関連を持つEmployee
ことができ、それぞれが複数の TimeSlots を持つことができます - このプロパティは、関連するすべてのタイムスロットを提供します- 1 つだけが必要な場合は、メソッドが必要でas パラメータを渡します。Clinic
ClientEmployees
ClientEmployee
ClientEmployees
ClientEmployeeId
public IEnumerable<TimeSlot> GetTimeSlots(int id)
{
// ClientEmployees is mapped navigation property
return ClientEmployees.Where(ce => ce.ClientEmployeeId == id)
.Select(ce => ce.TimeSlots);
}