![](/img/trans.png)
[英]AutoMapper - Map objects' properties (from object array to string array)
[英]Use AutoMapper to map a string array to an object
我正在使用TextFieldParser
解析CSV文件以使用EntityFramework
导入数据库。
TextFieldParser
将CSV文件的每一行作为string[]
。 为了保存对象,我需要从每一行构建一个对象。 有没有办法使用AutoMapper
来做到这一点?
我的对象结构是这样的:
public class Person
{
public string FirstName { get; set; }
public string MiddleName { get; set; }
public string LastName { get; set; }
public string Address { get; set; }
public string PhoneNumber { get; set; }
}
我的CSV行格式如下:
名字,中间名,姓氏,地址,******中国
这可以通过以下方式在AutoMapper
相当容易地完成:
Mapper.CreateMap<string[], Person>()
.ForMember(p => p.FirstName, opts => opts.MapFrom(s => s[0]))
.ForMember(p => p.MiddleName, opts => opts.MapFrom(s => s[1]))
.ForMember(p => p.LastName, opts => opts.MapFrom(s => s[2]))
.ForMember(p => p.Address, opts => opts.MapFrom(s => s[3]))
.ForMember(p => p.PhoneNumber, opts => opts.MapFrom(s => s[4]));
请记住,此映射取决于CSV文件中值的顺序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.