为什么我会收到“缺少类型映射配置或不支持的映射”错误?

时间:2014-03-20 15:45:19

标签: c# asp.net-mvc-3 automapper

我无法理解这个错误。我正在进入另一个开发人员项目,他已经使用提供的代码来检索几个报告和所有功能,但是当我创建类似的报告时,我仍然在标题中收到错误。

需要使用的地方和内容才能使此映射正常工作。 请告知是否需要更多代码。 另请注意,这是一个ASP.NET MVC 3应用程序

控制器......

    case ReportType.BS_Report:
            {
                model.BSReport = "Company name";

                var records = _docsRepo.PaginatedBS_Reports(model.BSReport,
                                                                            model.From,
                                                                            model.To,
                                                                            currentPageIndex,
                                                                            pageSize,
                                                                            out totalRecords);

                var TimeRec = Mapper.Map<IList<BS_Report>, IList<BSModel>>(records);

                var TimeRecdModel = TimeRec.ToReportPagedList(currentPageIndex,
                                                                            pageSize,
                                                                            model,
                                                                            totalRecords);

                return PartialView("BS_Report", TimeRecdModel);
            }

一切正常,直到达到这条线......

   var TimeRec = Mapper.Map<IList<BS_Report>, IList<BSModel>>(records);

BS_Report class ...

     public class BS_Report : ReportBase
{
    public int Id { get; set; }
    public string EquipmentID { get; set; }
    public string EquipmentDescription { get; set; }
    public DateTime? CreatedOn { get; set; }
    public string CustomerName { get; set; }
}

... BSModel

      public class BSModel : ReportBaseModel
{

    public int Id { get; set; }
    public string EquipmentID { get; set; }
    public string EquipmentDescription { get; set; }
    public DateTime? CreatedOn { get; set; }
    public string CustomerName { get; set; }
 }

其他报告案例使用完全相同的代码......

     case ReportType.Full_Report:
            {
                var records = _docsRepo.PaginatedFullReportReports(model.ReportedOn,
                                                                            model.From,
                                                                            model.To,
                                                                            currentPageIndex,
                                                                            pageSize,
                                                                            out totalRecords);

                var TimeRecord = Mapper.Map<IList<FullReport>, IList<FullReportModel>>(records);

                var TimeRecordModel = TimeRecord.ToReportPagedList(currentPageIndex,
                                                                            pageSize,
                                                                            model,
                                                                            totalRecords);

                return PartialView("FullReport", TimeRecordModel);
            }

1 个答案:

答案 0 :(得分:1)

您可能需要创建&#39;新报告的映射。在代码库中搜索对“创建地图”的一些调用。对前一个开发人员使用的任何报告类型进行操作。您可能需要为BS_Report类型创建一个。