3

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

数据:

foo1 foo2 foo3 foo4

班级:

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

使用自动映射器默认值。

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

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

前任:

f
o
o
1

f
o
o
2

等等..等等..

4

2 回答 2

2

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

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

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

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

于 2013-09-24T16:24:16.450 回答
2

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

看起来 automapper 做了一个合理的假设并逐个字符地枚举字符串。只需明确说明拆分即可。

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

于 2013-09-24T16:31:03.410 回答