C# 自动映射对象列表中的嵌套对象列表
我有以下课程:C# 自动映射对象列表中的嵌套对象列表,c#,automapper,C#,Automapper,我有以下课程: public class Course { public int CourseId; public List<Exam> Exams; } public class Exam { public int ExamId; public float Score; } 更新 映射规则: CreateMap<Course, CourseVM>() CreateMap() 您是否编写了MappingProfile 如果你想使用automapper,你必须告诉他你
public class Course
{
public int CourseId;
public List<Exam> Exams;
}
public class Exam
{
public int ExamId;
public float Score;
}
更新
映射规则:
CreateMap<Course, CourseVM>()
CreateMap()
您是否编写了MappingProfile
如果你想使用automapper,你必须告诉他你想如何绘制地图
以下是automapper配置文件的示例:
public class RestaurantMappingProfile:Profile
{
公共餐厅应用程序文件()
{
CreateMap()
.ForMember(m=>m.City,c=>c.MapFrom(s=>s.Address.City))
.FormMember(m=>m.Street,c=>c.MapFrom(s=>s.Address.Street))
.ForMember(m=>m.ZipCode,c=>c.MapFrom(s=>s.Address.ZipCode));
CreateMap();
CreateMap()
.ForMember(r=>r.Address,c=>c.MapFrom(dto=>newaddress())
{City=dto.City,ZipCode=dto.ZipCode,Street=dto.Street});
CreateMap();
}
你写了MappingProfile吗 如果你想使用automapper,你必须告诉他你想如何绘制地图 以下是automapper配置文件的示例:
public class RestaurantMappingProfile:Profile
{
公共餐厅应用程序文件()
{
CreateMap()
.ForMember(m=>m.City,c=>c.MapFrom(s=>s.Address.City))
.FormMember(m=>m.Street,c=>c.MapFrom(s=>s.Address.Street))
.ForMember(m=>m.ZipCode,c=>c.MapFrom(s=>s.Address.ZipCode));
CreateMap();
CreateMap()
.ForMember(r=>r.Address,c=>c.MapFrom(dto=>newaddress())
{City=dto.City,ZipCode=dto.ZipCode,Street=dto.Street});
CreateMap();
}
确保指定了正确的配置:
CreateMap<Exam, ExamVM>();
确保指定了正确的配置:
CreateMap<Exam, ExamVM>();
是否指定了映射器规则?@feihoa是的,在问题中也添加了,现在还指定了CreateMap(),并尝试在该方向上执行不同的操作?此外,尝试使所有字段属性为:public int CourseId{get;set;}@feihoa尝试了这个方法并成功了,只是回来给出了一个答案,看到了你的评论,请随意添加它作为答案,我会选择它;)是否指定了映射器规则?@feihoa是的,在问题中也添加了,现在在这个方向上尝试不同的事情CreateMap()也是指定的吗?另外,尝试使所有字段都具有属性:public int CourseId{get;set;}@feihoa尝试了这个方法并成功了,只是回来放一个答案并看到了您的评论,请随意添加它作为答案,我会选择它;)
public class RestaurantMappingProfile: Profile
{
public RestaurantMappingProfile()
{
CreateMap<Restaurant, RestaurantDto>()
.ForMember(m => m.City, c => c.MapFrom(s => s.Address.City))
.ForMember(m => m.Street, c => c.MapFrom(s => s.Address.Street))
.ForMember(m => m.ZipCode, c => c.MapFrom(s => s.Address.ZipCode));
CreateMap<Dish, DishDto>();
CreateMap<CreateRestaurantDto, Restaurant>()
.ForMember(r => r.Address, c => c.MapFrom(dto => new Address()
{ City = dto.City, ZipCode = dto.ZipCode, Street = dto.Street }));
CreateMap<CreateDishDto, Dish>();
}
CreateMap<Exam, ExamVM>();
public int CourseId { get; set; }