参数1:无法从'System.Collections.Generic.IList转换为参数1:无法从'System.Collections.Generic.IList转换

时间:2017-02-16 11:58:47

标签: c# asp.net model-view-controller

这是我在结果区域出错的代码段。我是MVC的新手。你能帮我吗?

IList<DownloadFileVM> DownloadFile = new List<DownloadFileVM>();
IList<DownloadFileDto> result = _downloadFileService.GetDownloadDetails(User.OrganisationId,true);
DownloadFile = Mapper.Map<IList<DownloadFileVM>, IList<DownloadFileDto>>(result);
return View("DownloadFile", DownloadFile);

显示的错误是:

  

错误CS1503参数1:无法转换

 System.Collections.Generic.IList<DomainLogic.DTOs.DownloadFileDto>
  

 System.Collections.Generic.IList<FileUploadPortal.Models.DownloadFileVM>

1 个答案:

答案 0 :(得分:0)

你错过了AutoMapper映射函数通用参数的顺序:

Mapper.Map<IList<DownloadFileDto>, IList<DownloadFileVM>>(result);

第一个通用参数是源对象的类型,第二个参数是目标对象的类型(您尝试从源获取)。您也可以只指定目标类型,因为源类型可以从方法参数中推断出来:

Mapper.Map<IList<DownloadFileVM>>(result);

注意:您无需使用空列表初始化DownloadFile。您可以在一个地方声明并分配该变量:

IList<DownloadFileVM> DownloadFile = Mapper.Map<IList<DownloadFileVM>>(result);