缺少类型映射配置或不支持的映射,但是映射没有问题
Missing type map configuration or unsupported mapping, however mapping has no issue
所以尽管没有明确的问题,我还是收到了这个错误 missing or unsupported mapping。
这是我的学生模型 class,我想在 class 中列出学生,其 ID 为学生 table。
StudentViewModel
-
public class StudentViewModel
{
public int student_id { get; set; }
public int class_id { get; set; }
public string student_name { get; set; }
public string father_name { get; set; }
public ClassViewModel Class { get; set; }
}
ClassViewModel
-
public class ClassViewModel
{
public int class_id { get; set; }
public string class_name { get; set; }
}
它获取了学生列表,但是当涉及到倒数第二行的服务层时,它给出了 ClassViewModel
映射不正确的异常。因此,当我从 StudentViewModel
中删除 ClassViewModel
并且它起作用时,但它不起作用。不知道为什么。
public List<StudentViewModel> GetStudents()
{
List<Student> s = sr.GetStudents();
var config = new MapperConfiguration(cfg => { cfg.CreateMap<Student, StudentViewModel>(); cfg.IgnoreUnmapped(); });
IMapper mapper = config.CreateMapper();
List<StudentViewModel> svm = mapper.Map<List<Student>, List<StudentViewModel>>(s);
return svm;
}
如果您的 Student
class 有一个名为 Class
且类型为 Class
的 属性,例如 -
public class Student
{
// other properties
public Class Class { get; set; }
}
然后简单地添加从 Class
到 ClassViewModel
-
的映射
var config = new MapperConfiguration(cfg =>
{
cfg.CreateMap<Student, StudentViewModel>();
cfg.CreateMap<Class, ClassViewModel>(); // <-- add this one
});
所以尽管没有明确的问题,我还是收到了这个错误 missing or unsupported mapping。
这是我的学生模型 class,我想在 class 中列出学生,其 ID 为学生 table。
StudentViewModel
-
public class StudentViewModel
{
public int student_id { get; set; }
public int class_id { get; set; }
public string student_name { get; set; }
public string father_name { get; set; }
public ClassViewModel Class { get; set; }
}
ClassViewModel
-
public class ClassViewModel
{
public int class_id { get; set; }
public string class_name { get; set; }
}
它获取了学生列表,但是当涉及到倒数第二行的服务层时,它给出了 ClassViewModel
映射不正确的异常。因此,当我从 StudentViewModel
中删除 ClassViewModel
并且它起作用时,但它不起作用。不知道为什么。
public List<StudentViewModel> GetStudents()
{
List<Student> s = sr.GetStudents();
var config = new MapperConfiguration(cfg => { cfg.CreateMap<Student, StudentViewModel>(); cfg.IgnoreUnmapped(); });
IMapper mapper = config.CreateMapper();
List<StudentViewModel> svm = mapper.Map<List<Student>, List<StudentViewModel>>(s);
return svm;
}
如果您的 Student
class 有一个名为 Class
且类型为 Class
的 属性,例如 -
public class Student
{
// other properties
public Class Class { get; set; }
}
然后简单地添加从 Class
到 ClassViewModel
-
var config = new MapperConfiguration(cfg =>
{
cfg.CreateMap<Student, StudentViewModel>();
cfg.CreateMap<Class, ClassViewModel>(); // <-- add this one
});