C# 自动将数组映射到列表 A类 { 公开名单; } B类 { 公共字符串[]数组; }
你将如何绘制这张地图 我试过了C# 自动将数组映射到列表 A类 { 公开名单; } B类 { 公共字符串[]数组; },c#,arrays,collections,automapper,C#,Arrays,Collections,Automapper,你将如何绘制这张地图 我试过了 class A { public List<string> list; } class B { public string[] array; } CreateMap(); 这是行不通的您的第一个问题是类成员不匹配。如果他们这样做了,我想这会管用的。如果没有,您只需指定映射,而不是让Automapper推断: CreateMap<A,B>(); CreateMap() .ForMember(d=>d.array,opts=>o
class A
{
public List<string> list;
}
class B
{
public string[] array;
}
CreateMap();
这是行不通的您的第一个问题是类成员不匹配。如果他们这样做了,我想这会管用的。如果没有,您只需指定映射,而不是让Automapper推断:
CreateMap<A,B>();
CreateMap()
.ForMember(d=>d.array,opts=>opts.MapFrom(s=>s.list.ToArray());
您的第一个问题是类成员不匹配。如果匹配,我认为这会起作用。如果不匹配,您只需指定映射,而不是让Automapper推断:
CreateMap<A,B>();
CreateMap()
.ForMember(d=>d.array,opts=>opts.MapFrom(s=>s.list.ToArray());
有关快捷方式,请参阅vb.net版本
CreateMap<A,B>()
.ForMember(d => d.array, opts => opts.MapFrom(s => s.list.ToArray());
对于快捷方式,请使用vb.net版本
CreateMap<A,B>()
.ForMember(d => d.array, opts => opts.MapFrom(s => s.list.ToArray());
b.array=a.list.ToArray()
?b.array=a.list.ToArray()
?集合不是一个字符串,而是两个不同名称空间的NameValueCollection,因此我假设它们也需要映射。有什么想法吗?是的,这是因为名称不匹配,它与数组/列表无关。@Proximo您可能想更新您的问题,以包括实际的集合类型。我本来打算这样做的,但我失败了计算出如何分别映射不同的内部集合。这个答案节省了时间。集合不是一个字符串,而是两个不同名称空间的NameValueCollection,因此我假设它们也需要映射。有什么想法吗?是的,这是因为名称不匹配,与数组/列表无关。@Proximo您可能需要更新您的问题以包含实际的收藏类型。我本来打算这样做,但我知道如何分别映射不同的内部收藏。这个答案节省了时间。