Asp.net 无法隐式转换类型';System.Collections.Generic.List';至';System.Collections.Generic.List
我怎样才能写这份声明?请…< p>当你将列表声明为一个类型时,你应该考虑添加正确的模板 比如说Asp.net 无法隐式转换类型';System.Collections.Generic.List';至';System.Collections.Generic.List,asp.net,Asp.net,我怎样才能写这份声明?请…< p>当你将列表声明为一个类型时,你应该考虑添加正确的模板 比如说 select new Product { p.ProductId, p.ProductCategoryId, pc.ParentProductCategoryId,
select new Product
{
p.ProductId,
p.ProductCategoryId,
pc.ParentProductCategoryId,
ProductName = p.Name,
Category = pc.Name,
p.Price,
p.ProductYear
}).ToList();
公共静态列表GetProductsByCategoryID(…)
您正在此行中选择匿名类型:
public static List<Product> GetProductsByCategoryID(...)
select new { ... }
试试这句话:
public static List<Product> GetProductsByCategoryID(...)
select new { ... }
如果您试图返回
列表
,则无法将产品类别
信息放入返回的列表中,除非产品
具有链接到产品类别
的导航属性。您正在创建匿名类型,并且无法从方法返回匿名类型(实际上有一种方法,但与仅仅创建一个新类相比是复杂的,不值得),并且它也与列表的签名不匹配。因此,您必须创建一个新类,该类包含所需所有属性的定义,例如ProductDetails,并返回一个列表。使用选择新产品而不是选择新产品。它将返回产品类型的列表:
select p
我遇到了同样的问题..您应该将
List prods
更改为var prods