如何使用从字符串到字符串列表的automapper

时间:2013-09-24 16:19:28

标签: c# automapper

使用automapper我们如何将用空格分隔的字符串转换为List?

数据:

foo1 foo2 foo3 foo4

类别:

public class myFooList
{
   public int myId;
   public List<string> myListOfStrings;
}

使用automapper默认值。

Mapper.CreateMap<data,myFooList>()        
    .ForMember(d=>d.mListOfStrings, s=>s.MapFrom(s=>s.Data));

我以每个字符一行的形式获取数据。

例如:

f
o
o
1

f
o
o
2

etc..etc ..

2 个答案:

答案 0 :(得分:2)

分割字符串并从中创建列表非常容易:

var text = "foo1 foo2 foo3 foo4";
var delimiters = new char [] {' '};

var myListOfStrings = text.Split(delimiters).ToList();

我从来不需要AutoMapper,所以你可能想在这里工作......

答案 1 :(得分:1)

Mapper.CreateMap<data,myFooList>()
.ForMember(d=>d.mListOfStrings, s=>s.MapFrom(s=>s.Data.Split()));

看起来,automapper做出了合理的假设,并按字符逐个枚举字符串。 只是明确一下斯普利特。

nvoigt的建议也是正确的 - 你确定要使用automapper吗?