[英]Linq returning incorrect values
我有一個LINQ語句返回錯誤的數據。
我需要選擇每個處於活動狀態的產品,並根據登錄的用戶類型顯示價格。(每個用戶類型都有不同的價格)
我目前在數據庫中有五個活動項目,但僅顯示兩個。
public IQueryable GetProductsForListViewByUserType(Guid userTypeID)
{
return
(from p in this.Entities.Product
join b in this.Entities.Brand on p.BrandID equals b.ID
join ut in this.Entities.UserTypePrice on p.ID equals ut.ProductID
where p.Active == true && ut.UserTypeID == userTypeID
select new
{
p.ID,
p.Name,
Price = ut.Price,
p.Description,
BrandName = b.Name,
p.Colour,
p.ImageURL
});
}
並非所有活動項都從查詢中返回。
就個人而言,該語句的語法似乎很好。 但是我想知道其他人對此的看法。
我調試了該語句,這就是為什么我知道問題出在語句本身之內的原因。
我的建議是問題出在userTypeID
,如果Entities.UserTypePrice
缺少該產品,則不會退貨。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.