使用automapper映射嵌套的对象集合

时间:2016-10-11 09:16:05

标签: c# automapper

我在Github上找到了这个链接,它显示了当内部地图嵌套在外部地图中时如何设置映射器配置。

https://github.com/AutoMapper/AutoMapper/wiki/Nested-mappings

然而,这并不适合我,因为我有点不同:我的public class A { public virtual void methodA() { } } public class B : A { public void methodB() { var ClassA = new A(); } public override void methodA() { //Do stuff } } 对象实际上是Inner Collection

InnerSource

public class OuterSource
{
    public int Value { get; set; }
    public Collection<InnerSource> Inners { get; set; }
}

public class InnerSource
{
    public int OtherValue { get; set; }
}

链接中的解决方案为此代码创建了MapperConfiguration

public class OuterDest
{
    public int Value { get; set; }
    public Collection<InnerDest> Inners { get; set; }
}

public class InnerDest
{
    public int OtherValue { get; set; }
}

但是当我运行它时,我得到一个AutoMapperMappingException (内部例外= var config = new MapperConfiguration(cfg => { cfg.CreateMap<OuterSource, OuterDest>(); cfg.CreateMap<InnerSource, InnerDest>(); }); // setup object data var mapper = config.CreateMapper(); var dest = mapper.Map<OuterSource, OuterDest>(source);

如何创建这样的嵌套映射,但内部对象是Collection?注意我的实际情况比上面提供的代码(有几个Argument 'value' must not be null. Parameter name: value调用)

复杂一点

0 个答案:

没有答案