Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 映射嵌套不同类型在AutoMapper中具有不同属性名称的嵌套对象_C#_Automapper 6 - Fatal编程技术网

C# 映射嵌套不同类型在AutoMapper中具有不同属性名称的嵌套对象

C# 映射嵌套不同类型在AutoMapper中具有不同属性名称的嵌套对象,c#,automapper-6,C#,Automapper 6,我正在尝试将一个嵌套对象映射到另一个对象,如下面的示例所示。我可以很容易地将BobAge映射到JimAge等,但是如何将Bobs集合映射到Jims集合呢。这可以深入到n层。非常感谢 public class Bob { public int BobAge { get; set; } public string BobName { get; set; } public List<Bob> Bobs { get; set; } } public class

我正在尝试将一个嵌套对象映射到另一个对象,如下面的示例所示。我可以很容易地将BobAge映射到JimAge等,但是如何将Bobs集合映射到Jims集合呢。这可以深入到n层。非常感谢

public class Bob
{
    public int BobAge { get; set; }

    public string BobName { get; set; }

    public List<Bob> Bobs { get; set; }
}

public class Jim
{
    public int JimAge { get; set; }

    public string JimName { get; set; }

    public List<Jim> Jims { get; set; }
}




        cfg.CreateMap<Bob, Jim>()
            .ForMember(d => d.JimAge, opt => opt.MapFrom(src => src.BobAge))
            .ForMember(d => d.JimName, opt => opt.MapFrom(src => src.BobName))
            .ForMember(d => d.Jims, opt => opt.MapFrom(src => src.Bobs));
公共类Bob
{
public int BobAge{get;set;}
公共字符串BobName{get;set;}
公共列表BOB{get;set;}
}
公共课吉姆
{
公共int JimAge{get;set;}
公共字符串JimName{get;set;}
公共列表Jims{get;set;}
}
cfg.CreateMap()
.ForMember(d=>d.JimAge,opt=>opt.MapFrom(src=>src.BobAge))
.ForMember(d=>d.JimName,opt=>opt.MapFrom(src=>src.BobName))
.ForMember(d=>d.Jims,opt=>opt.MapFrom(src=>src.Bobs));

很抱歉,以您的代码为例,对我来说,它可以正常工作。请给出一个不起作用的实际例子。请看我的测试。谢谢你的回复。基本上我犯了一个愚蠢的错误,Bobs是一个Bob,而不是一个集合。完全错过了。好吧,这是可能的,没问题。投票结束,因为这种错误不太可能帮助解决类似问题。