Automapper: Mapping a property value of an object to a string

Using Automapper, how do you handle the mapping of a property value on an object to an instance of a string. Basically I have a list of Role objects and I want to use Automapper to map the content of each "name" property to a corresponding list of string (so I just end up with a list of strings). I'm sure it has an obvious answer, but I can't find the mapping that I need to add to "CreateMap" to get it to work.

An example of the relevant code is shown below:

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);

I love Automapper (and use it in a number of projects), but wouldn't this be easier with a simple LINQ statement?

var allRoles = from r in roles select r.Name

The AutoMapper way of accomplishing this:

Mapper.CreateMap<Role, String>().ConvertUsing(r => r.Name);
链接地址: http://www.djcxy.com/p/37348.html

上一篇: AutoMapper:手动设置属性

下一篇: Automapper:将对象的属性值映射到字符串