当我使用方法Max()。它在.ToList()给出错误,'LINQ.SalesTaxRate'不包含'ToList'的定义,并且没有扩展方法'ToList'接受类型的第一个参数可以找到'LINQ.SalesTaxRate'(您是否缺少using指令或程序集引用?)
SalesTaxRate是我的表名。
private void Button_Click_7(object sender, RoutedEventArgs e)
{
using (LinqContainer context = new LinqContainer())
{
var salesTaxRateList = (from c in context.SalesTaxRates
orderby c.SalesTaxRateID
select c).Max()
.ToList();
grid.ItemsSource = salesTaxRateList;
}
答案 0 :(得分:0)
这种情况正在发生,因为您选择了最大的SalesTaxRate对象(使用Max
),然后尝试将其转换为列表。
如果您要检索的只是TaxRate的最大值,那么只需执行Max()
即可。 ToList()
不是必需的,因为您只是尝试检索单个项目(而不是完整列表),并且不需要orderby
,因为Max()
会自动检索最大元素,而不需要整理列表。
答案 1 :(得分:0)
您可以更简单地查询
var salesTaxRateList =context.SalesTaxRates.Max(c=>c.SalesTaxRateField)
SalesTaxRateField是您想要的最大值。
另请参阅我的评论:您正在使用GRID仅显示一个结果。 Max()只返回一个值,因此网格可能不是你想要的。