PsProductDataContext db = new PsProductDataContext();
public List<PsProduct> StaticReport()
{
return (from c in db.PsProduct
select c.ShCompanyName).ToList();
}
这段代码系统报 无法将类型“system.collection .generic.list<string>隐士转换为system.collection .generic.list<qdrkProductMvc.Models.PsProduct>,我把代码改为
public IQueryable<PsProduct> StaticReport()
{
return from c in db.PsProduct
select c.ShCompanyName;
}
还是报相同的错,请高手指教
linq to sql没弄过,估计应该是这样写:return (from c in db.PsProdcut select c).ToList(),你那样写仅仅只返回一个ShCompanyName字段
你方法给的是一个Model对象,当然不能转化成List<string>, 你可以在第二个改动的
select c.ShCompanyName 加上as models.PsProduct 试试
既然你是返回select c.ShCompanyName 这个东西,那为什么不直接返回一个string呢?
你两段代码返回的值类型都是不匹配的。比如,第一段代码中你函数返回值是 List<PsProduct> ,可是你return的是 (... select c.ShCompanyName).ToList(),是只有一个属性ShCompanyName的List类型,也就是List<string>类型。同理第二段代码也是。你用一楼的的方法后报的什么错呢?
public List<PsProduct> StaticReport()
{
return (from c in db.PsProduct
select c).ToList();
}
哈哈,好久不见