Asp.net mvc 使用Linq返回viewmodel时遇到的问题
我想从第一次选择返回ProductDetailViewModel列表,但我所做的一切似乎都不起作用。将这两种选择结合起来的正确方法是什么Asp.net mvc 使用Linq返回viewmodel时遇到的问题,asp.net-mvc,linq,Asp.net Mvc,Linq,我想从第一次选择返回ProductDetailViewModel列表,但我所做的一切似乎都不起作用。将这两种选择结合起来的正确方法是什么 var test = (from pc in db.PartnerCoupons from coup in db.Coupons where pc.CouponID == coup.CouponID &&
var test = (from pc in db.PartnerCoupons
from coup in db.Coupons
where pc.CouponID == coup.CouponID
&& pc.PartnerCampaignID == partCamp.PartnerCampaignID
&& coup.CategoryID == id
select pc).ToList();
var partnerCoupons = from pc in test
.Select(s => new ProductDetailViewModel(s))
.ToList()
select pc;
return View("List", partnerCoupons);
我只是想澄清一下,这是有效的,我只是想摆脱“PartnerCouples”-select
/迈克试试这个:
返回视图(“列表”,partnerCouples.ToList()) 嗨!也许我不清楚,但这个场景是可行的,我只是想摆脱“PartnerCouples”—选择。嗨!当我尝试得到“序列不包含匹配的元素”时,但如果这是正确的方法,那么它一定是其他的东西。我不认为它与您发布的内容有任何不同,只是它更紧凑。通常,在第一次调用
时,或者在没有此类项的情况下调用Single
时,您会遇到此类异常。请注意:如果使用LINQ语法,调用ToList
是没有意义的,因为它会将其包装在另一个Select
中。。
var coupons = from pc in db.PartnerCoupons
from coupon in db.Coupons
where pc.CouponID == coupon.CouponID
&& pc.PartnerCampaignID == partCamp.PartnerCampaignID
&& coupon.CategoryID == id
select new ProductDetailViewModel (pc);
return View ("List", coupons.ToList ());