是否真的可以使用 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 是一个结构。
最佳答案
将类实例映射到结构是完全可能的——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);
关于c# - 要构造的自动映射器类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17550856/