自动映射:将对象的属性值映射到字符串

时间:2010-12-14 13:58:53

标签: automapper

使用Automapper,如何处理对象的属性值到字符串实例的映射。基本上我有一个Role对象列表,我想使用Automapper将每个“name”属性的内容映射到相应的字符串列表(所以我最后得到一个字符串列表)。我确信它有一个明显的答案,但我找不到我需要添加到“CreateMap”以使其工作的映射。

相关代码的示例如下所示:

public class Role
{
   public Guid Id{get;set;}
   public string Name{get;set;}
   ...
   ...
}

// What goes in here?
Mapper.CreateMap<Role, string>().ForMember(....);

var allRoles = Mapper.Map<IList<Role>, IList<string>>(roles);

1 个答案:

答案 0 :(得分:25)

我喜欢Automapper(并在许多项目中使用它),但使用简单的LINQ语句会不会更容易?

var allRoles = from r in roles select r.Name

AutoMapper实现此目的的方法:

Mapper.CreateMap<Role, String>().ConvertUsing(r => r.Name);