特定の列値に基づいて外部キーマッピングを行うことは可能ですか?
私は次のエンティティを持っています。
public class Controller
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
public virtual List<ControllerDevice> ActiveDevices { get; set; }
public virtual List<ControllerDevice> TamperedDevices { get; set; }
public virtual List<ControllerDevice> IgnoredDevices { get; set; }
}
public class ControllerDevice
{
public int Id { get; set; }
public DeviceStatus Status { get; set; }
public int ControllerId { get; set; }
public int NetworkDeviceId { get; set; }
public virtual Controller Controller { get; set; }
public virtual NetowkDevice NetowkDevice { get; set; }
}
public class NetowkDevice
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
}
public enum DeviceStatus
{
Active,
Tampered,
Ignored
}
ActiveDevices
、TamperedDevices
およびIngoredDevices
リストをに基づいて自動入力することは可能ですControllerDevice
DeviceStatus
か、それともリストごとに3つの異なるテーブルを作成する必要がありますか。IE ActiveControllerDevice
、TamperedControllerDevices
およびIgnoredControllerDevices
。
さらに説明が必要な場合はお知らせください。