したがって、エンティティ モデルには次のような継承階層があります。
class Member
{
public virtual Information Information { get; set; }
public long InformationId { get; set; }
//Other Props
}
class Staff : Member
{
}
class Guest : Member
{
}
class Information
{
public string Name { get; set; }
}
class StaffInformation : Information
{
public DateTime BirthDate { get; set; }
}
class GuestInformation : Information
{
public DateTime Expiry { get; set; }
}
ビューでは、メンバー情報を正しい子にキャストするのに苦労しました。たとえば、私はしたい:
TextBoxFor(model => model.Staff.StaffInformation.BirthDate)
しかし、私にできることは次のとおりです。
TextBoxFor(model => (Entities.StaffInformation)(model.Staff.Information).BirthDate)
子の情報の種類を指定できますか? 次の擬似のようなもの:
class Staff : Member
{
public StaffInformation Information { get; set; }
}
class Guest : Member
{
public GuestInformation Information { get; set; }
}
なにか提案を?