以下はC#.Netの私のDTOです
public class Movie
{
public int Id { get; set;}
public IEnumerable<Blog> Blogs {get; set;}
}
public class Blog
{
public int Id { get; set;}
}
public class BlogCat1 : Blog
{
public string SomeProp1 { get; set;}
}
public class BlogCat2 : Blog
{
public string SomeProp2 { get; set;}
}
IEnumerable で子エンティティを持つブログを初期化すると、エラーや明示的な変換は必要ありません。つまり、
movieObj.Blogs = new List<BlogCat1>(); // fine no error
movieObj.Blogs = new List<BlogCat2>(); // fine no error
しかし、何らかの理由で、IEnumerable の代わりに IList を使用する必要があります。
public IList<Blog> Blogs {get; set;}
しかし、更新されたときに & 子エンティティで割り当てようとしました
movieObj.Blogs = new List<BlogCat1>(); // error CompileTime Error
movieObj.Blogs = (Ilist<BlogCat1)new List<BlogCat1>(); // error
でマッピングIList<Parent>
する方法はIList<Child>
?
ありがとう!