ソースクラス:
public class Page : EntityBase
{
public Page()
{
this.Articles = new List<Article>();
}
public virtual ICollection<Article> Articles { get; set; }
}
public class Article : EntityBase
{
public Article()
{
this.Pages = new List<Page>();
}
public virtual ICollection<Page> Pages { get; set; }
}
宛先クラス
public class EditPageModel : ModelBase
{
public string Title { get; set; }
public List<Article> Articles { get; set; }
public override ModelBase Initialize(EntityBase entity)
{
return ObjectMapperManager.DefaultInstance.GetMapper<Page, EditPageModel>().Map((Page)entity);
}
}
私が使うとき
var model = (EditPageModel)new EditPageModel().Initialize(entity);
エラーが発生しました
タイプ 'System.Data.Entity.DynamicProxies.Article_2F97D0440149ED4566ED7675640D475A23EB97002CFD5941610DD0C9BCE74E55' のオブジェクトをタイプ 'System.Collections.Generic.ICollection`1[SomeProject.Dal.Models.Articles.Article]' にキャストできません。
AutoMapper を使用すると、正常に動作します。