实际上是否可以使用AutoMapper将类映射到结构?
目前我正在接受:
{"The type initializer for 'AutoMapper.TypeMapFactory' threw an exception."}
这是我的简化代码:
Mapper.CreateMap<A, B>()
.ForMember(dest => dest.a, opt => opt.MapFrom(src => src.b))
.ForMember(dest => dest.c, opt => opt.MapFrom(src => src.d))
.ForMember(dest => dest.f, opt => opt.MapFrom(src => src.g));
这里A是一个类,B是一个结构。
答案 0 :(得分:1)
完全可以将类实例映射到struct - AutoMapper对泛型类型参数没有任何约束,并且它对结构体工作正常。例如。如果你有
public class A
{
public string b { get; set; }
public int d { get; set; }
public bool g { get; set; }
}
public struct B
{
public bool f;
public string a;
public int c;
}
使用您的映射代码可以正常工作:
var a = new A { b = "b", d = 42, g = false };
var b = Mapper.Map<B>(a);