2016-05-13 90 views
0

我試圖運行測試來檢查映射是否正確,但是每次運行調試程序時我都會得到一個AutoMapperMappingExceptionAutoMapper異常將一個DTO轉換爲另一個對象

我的代碼:

public BB.LMS.Models.CaseExport ConvertStarsCaseExportToCaseExport(BB.LMS.Services.Core.Models.Stars.caseexport caseExport) 
{ 
    Mapper.CreateMap<BB.LMS.Services.Core.Models.Stars.caseexport, CaseExport>(); 

    var ConvertedCase = Mapper.Map<BB.LMS.Services.Core.Models.Stars.caseexport, BB.LMS.Models.CaseExport>(caseExport); 
    return ConvertedCase; 

} 

[TestMethod()] 
public void ConvertToCaseTest() 
{ 
    DTOService service = new DTOService(); 

    caseexport export = xmlService.DeserializeStarsExport(testStarsFile); 
    CaseExport convertedCase = service.ConvertStarsCaseExportToCaseExport(export); 

例外:

{ 「缺失型地圖配置或不支持的映射\ r \ n \ r \ nMapping類型:\ r \ ncase - > Case \ r \ nBB.LMS.Services.Core.Models.Stars.case - > BB.LMS.Models.Case \ r \ n \ r \ n目標路徑:\ r \ nCaseExport.solicitor。 solicitor.case.case \ r \ n \ r \ n源值:\ r \ nBB.LMS.Services.Core.Models.Stars.case」 }

FIXED:作爲塞吉大號正確地指出,我沒有映射的情況下 - >案例曾經映射我的代碼工作的一種享受!

+0

有什麼異常?你能把它包含在你的問題中嗎? – Nasreddine

+0

剛剛添加更新了這個問題。 –

+0

您應爲BB.LMS.Services.Core.Models.Stars.caseexport類定義您的模型的BB.LMS.Services.Core.Models.Stars.case和其他類的映射。 –

回答

2

該錯誤表示automapper需要配置才能映射。

下面是做到這一點的一種方法:

public BB.LMS.Models.CaseExport ConvertStarsCaseExportToCaseExport(BB.LMS.Services.Core.Models.Stars.caseexport caseExport) 
    { 
     var config = new MapperConfiguration(cfg => 
      { 
       cfg.CreateMap<BB.LMS.Services.Core.Models.Stars.caseexport, CaseExport>(); 
      }); 
     var mapper = config.CreateMapper(); 
     var ConvertedCase = mapper.Map<BB.LMS.Services.Core.Models.Stars.caseexport, BB.LMS.Models.CaseExport>(caseExport); 
     return ConvertedCase; 
    } 
+0

@ kayess修復它 – Yvain

相關問題