如何使用 AutoMapper 将对象列表转换为整数列表?
我有一个 Student
对象:
public class Student
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
和一个 Classroom
对象:
public class Classroom
{
public List<Student> Students { get; set; }
}
我想使用 AutoMapper 将学生列表转换为学生 ID 列表:
public class ClassroomDTO
{
public List<int> StudentIds { get; set; }
}
如何配置 AutoMapper 来执行以下操作这个转换?
回答:
为了扩展我的问题和吉米的答案,这就是我最终所做的:
Mapper.CreateMap<Student, int>().ConvertUsing(x => x.Id);
Mapper.CreateMap<Classroom, ClassroomDTO>()
.ForMember(x => x.StudentIds, y => y.MapFrom(z => z.Students));
AutoMapper 足够聪明,可以完成剩下的工作。
I have a Student
object:
public class Student
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
And a Classroom
object:
public class Classroom
{
public List<Student> Students { get; set; }
}
I want to use AutoMapper to convert the list of students to a list of student IDs:
public class ClassroomDTO
{
public List<int> StudentIds { get; set; }
}
How do I configure AutoMapper to do this conversion?
Answer:
To expand on my question and Jimmy's answer, this is what I ended up doing:
Mapper.CreateMap<Student, int>().ConvertUsing(x => x.Id);
Mapper.CreateMap<Classroom, ClassroomDTO>()
.ForMember(x => x.StudentIds, y => y.MapFrom(z => z.Students));
AutoMapper was smart enough to do the rest.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要一个自定义类型转换器:
You'll need a custom type converter: