我有以下对象:
public class Category {
public override long Id { get; set; }
public override string Title { get; set; }
public override int MaxDepth { get; set; }
public virtual Category Parent { get; set; }
public virtual IList<Category> ChildrenNodes { get; set; }
}
我正在使用NHibernate为此检索数据,因为我的列表是LazyLoading
,
它应重新映射到CategoryViewModel
btw:用于内部用途。
这就是ViewModel的样子...... (例如我没有把所有内容都放在里面)
public class CategoryViewModel {
public override long Id { get; set; }
public override string Title { get; set; }
public virtual CategoryViewModel Parent { get; set; }
public IList<CategoryViewModel> ChildrenNodes { get; set; }
}
我正在使用我编写的这种扩展方法。
public static TOut Map<TIn, TOut>(this TIn source)
where TIn : class
where TOut : new() {
return Mapper.Map<TIn, TOut>(source); // ThiSMember
}
现在的问题是:
如何使用递归映射复合对象? 在ThisMemer示例中我没有找到答案。
Automapper因为NHibernate LazyLoading而失败了。
你能建议其他地图制作者吗?