缺少映射配置文件中映射的类

本文关键字:映射 配置文件 | 更新日期: 2023-09-27 18:25:30

配置文件:

public class StudentProfile : Profile
{
    protected override void Configure()
    {
        Mapper.CreateMap<Student, StudentIndexModel>();
    }
}

它突破的那条线:

public ActionResult Index()
{
    // Breaks here
    var students = Mapper.Map<IEnumerable<StudentIndexModel>>(db.Students.ToList());
    return View(students);
}

当它从数据库中获取记录时,我得到了一个不受支持的映射异常。没有返回记录时没有异常(表中没有记录)

错误

缺少类型映射配置或不支持的映射。

映射类型:学生->学生索引模型ContosoUniversity.Models.Student->ContosoUniversity.ViewModels.StudentIndexModel

目标路径:IEnumerable `1[0]

学生班级:

public class Student : Entity
{
    public Student() { }
    public string LastName { get; set; }
    public string Forenames { get; set; }
    public DateTime EnrolmentDate { get; set; }
    public virtual ICollection<Enrolment> Enrolments { get; set; }
}

StudentIndexModel类:

public class StudentIndexModel
{
    public int Id { get; set; }
    public string LastName { get; set; }
    public string Forenames { get; set; }
    public DateTime EnrolmentDate { get; set; }
}

我哪里错了?

缺少映射配置文件中映射的类

我又做了一次,两秒钟后我找到了自己问题的答案。

我把这个添加到Global.asax:

AutoMapperConfiguration.Configure();

其中AutomapperConfiguration具有Mapper.Initialize()方法