這裏是我的代碼顯示像LINQ的SQL錯誤羣組加入
錯誤的嚴重性代碼說明項目文件的線路抑制狀態 錯誤CS0411的方法
Queryable.GroupJoin<TOuter, TInner, TKey, TResult>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter, TKey>>, Expression<Func<TInner, TKey>>, Expression<Func<TOuter, IEnumerable<TInner>, TResult>>)
類型參數不能從使用推斷。嘗試基於羣組加入位置明確
data.RawMaterail.Where(c => c.Category.categoryType == 1)
.Join(data.Sizes, x => x.DiamondSize.diamondSizeId,
y => y.DiamondSize.diamondSizeId,
(x, y) => new { RM = x, Size = y })
.GroupJoin(data.PriceLevels.Where(c => c.priceLevelId == PriceLevelId),
x => new { x.RM.rMId , x.Size.sizeId},
y => new { y.rmId , y.sizeId},
(y, x) => new { Category = y, PurityLevel = x })
.SelectMany(xy => xy.PurityLevel.DefaultIfEmpty(),
(x, y) => new { Category = x.Category, PurityLevel = y })
.Select(item => new
{
Code = item.Category.RM.rMCode + " " + item.Category.Size.sizeName,
Name = item.Category.RM.rMName + " " + item.Category.Size.sizeName,
Date = item.PurityLevel.rowDate,
Id = (int)item.Category.RM.rMId,
RateId = (int?)item.PurityLevel.stonePriceLevelId ?? 0,
Price = (double?)item.PurityLevel.price ?? 0,
PriceLevelId = (int?)item.PurityLevel.priceLevelId ?? 0,
TypeId = (int)item.Category.Size.sizeId,
IsRateChanged = false
}).OrderBy(c => c.Date).ThenBy(n => n.TypeId).ToList();
錯誤顯示指定類型的參數,以及如何可以加入此類型的左派加入
恕我直言_join_&_group join_在LINQ中總是很容易在查詢語法中編寫和理解。 –