製品のコレクションを持つ注文クラスがあります...
public class Order
{
int id { get; set; }
public virtual ICollection<Product> Products { get; set; }
}
public abstract class Product
{
int id { get; set; }
}
製品から派生した、私はいくつかの異なるタイプの製品を持っています...
public class ProductA : Product
{
public string CustomFieldA {get; set;}
}
public class ProductB : Product
{
public string CustomFieldB {get; set;}
}
これらの派生製品を注文に追加して、データベースに保存できます...
var producta = new ProductA();
producta.CustomFieldA = "abc";
order.Products.Add(product);
order.SaveChanges();
これにより、データベースが正しく更新されます。
私が理解できないのは、このデータにどのようにアクセスするかです!
Order.Products には基本クラスが含まれているだけです。Order.Products の各レコードがどのタイプの派生クラスであるかを確認し、たとえば、ProductA の CustomFieldA にアクセスするにはどうすればよいですか。
本当に明白な何かを見逃しているか、最初の部分を完全に間違っていると思います!