我有以下扩展方法来计算产品的平均评分。
public static class Extensions
{
public static decimal CalculateAverageRating(this ICollection<ProductReview> productReviews)
{
// Calculate and return average rating
return averageRatings;
}
}
我想在 EF 可查询中使用此方法,如下所示:
var products = _context.Products
.Include(pr => pr.ProductReviews)
.AsQueryable();
if(searchParams.Rating != 0)
products = products.Where(p => p.ProductReviews.CalculateAverageRating() == searchParams.Rating);
但是,我不断遇到错误“ArgumentException:方法的类型为'System.Collections.Generic.IAsyncEnumerable 1[Products.Reviews.ProductReview]' cannot be used for parameter of type 'System.Collections.Generic.IEnumerable1 [System.Object]'的表达式”。
我们可以在 EF Where 中使用扩展方法吗?请就此给我建议。
叮当猫咪
回首忆惘然
慕尼黑的夜晚无繁华
随时随地看视频慕课网APP
相关分类