让我们有两个类
public class Source
{
public string Prop1 {get;set;}
}
public class Dest
{
public float Prop1 {get;set;}
}
如何为Prop1
属性设置自定义类型转换器?
Mapper.CreateMap<Source, Dest>()
您可以按照文档中的说明使用转换使用。为此,您需要定义一个转换器。或者您可以定义映射:
class Program
{
static void Main(string[] args)
{
AutoMapper.Mapper.CreateMap<Source, Dest>()
.ForMember(
dest => dest.Prop1,
src => src.MapFrom(m => float.Parse(m.Prop1, System.Globalization.CultureInfo.InvariantCulture)
));
Source sourceObject = new Source() { Prop1 = "1.5" };
Dest destination = AutoMapper.Mapper.Map<Source, Dest>(sourceObject);
Console.WriteLine("value {0}", destination.Prop1);
}
}
public class Source
{
public string Prop1 { get; set; }
}
public class Dest
{
public float Prop1 { get; set; }
}
手动映射对象可能会更好。
关于自定义映射,您可以在此处阅读