1 回答
TA贡献1824条经验 获得超8个赞
使用 Automapper,您可以将一种类型映射到另一种类型。当您这样做时,将自动映射相同类型的数组。
ArrayOfStudents在您的情况下,您将创建和之间的地图Student。这将是一个简单的映射,因为两个映射类型之间的类型和名称是相同的:
public class MappingProfile : Profile
{
public MappingProfile()
{
this.CreateMap<Student, ArrayOfStudents>();
this.CreateMap<ArrayOfStudents, Student>();
}
}
现在,无论您打算在哪里进行实际映射(例如 RESTful 控制器),您都可以执行以下操作:
public class MyController
{
private readonly IMapper mapper;
public MyController(IMapper mapper)
{
this.mapper = mapper;
}
// Then in any of your methods:
[HttpGet]
public IActionResult MyMethod()
{
var objectsToMap = details.Student; // This is an array of Student type.
var mappedObjects = this.mapper.Map(objectsToMap); // This will be an array of ArrayOfStudents.
// do what you will with the mapped objects.
}
}
想法是,您注册类型的映射(包括类型中成员的类型)。然后,这些类型的集合的映射由 Automapper 自动处理。
- 1 回答
- 0 关注
- 119 浏览
添加回答
举报