MVC C# 中的 DTO 出现问题可能存在转换问题
本文关键字:问题 存在 转换 中的 DTO MVC | 更新日期: 2023-09-27 18:30:54
每次我尝试编写排除用户已经拥有的服务的方法时,我都会收到此错误。 所以我有两个列表,List1 是所有服务,List2 是用户拥有的所有服务的列表。 所以我正在两个列表中进行联盟排除,但每次我都尝试
无法将类型"System.Collections.Generic.List"隐式转换为"System.Collections.Generic.List"C:.。''控制器''服务控制器.cs
private List<ServiceDTO> getList(ServDTO.ServDTO[] services, IEnumerable<string> servObtained)
{
var allServices = servicesClient.GetallServices();
var allServicesCode = (from s in allServices select s.serviceCode).ToList();
IEnumerable<String> list1 = allServicesCode;
IEnumerable<String> list2 = servObtained;
var listFinal = list1.Union(list2);
List<ServiceDTO> list = listFinal.ToList();
return (list);
}
谁能阐明为什么我会遇到这个问题?
您返回了错误的类型,请更改代码以返回正确的类型。编译器不知道如何将string
转换为ServiceDTO
您必须自己做。
更改以下两行:
List<ServiceDTO> list = listFinal.ToList();
return (list);
跟:
return listFinal.Select(x=>new ServiceDTO(){serviceCode = x})ToList();
若要返回List<ServiceDTO>
返回,当前要返回List<string>
,而方法返回类型为 List<ServiceDTO>