.net 将LINQ中的数据绑定LINQ查询链接到数据集

.net 将LINQ中的数据绑定LINQ查询链接到数据集,.net,linq,chaining,linq-to-dataset,.net,Linq,Chaining,Linq To Dataset,我试图对查询结果执行查询,但得到一个错误:“方法或操作未实现”。我可以用这种方式链接查询吗? 例如,我有一个Northwind类型的数据集。我有: queryResult = From product In NorthWindDataSet.Products Where (product.UnitsOnOrder > CInt(txtUnitsOnOrderFilter.Text)) Select

我试图对查询结果执行查询,但得到一个错误:“方法或操作未实现”。我可以用这种方式链接查询吗? 例如,我有一个Northwind类型的数据集。我有:

  queryResult = From product In NorthWindDataSet.Products
                      Where (product.UnitsOnOrder > CInt(txtUnitsOnOrderFilter.Text))
                      Select product
然后我试着去做

queryResult = From product In queryResult
                Where (product.CategoryID = cboCategoryFilter.SelectedValue)
                Select product
要最终将查询结果用作绑定源,请执行以下操作: ProductsBindingSource.DataSource=queryResult.AsDataView()


我如何才能做到这一点?

LINQ to SQL可能在抱怨查询中的CInt和SelectedValue调用。请尝试在查询之外捕获这些值:

Dim units = CInt(txtUnitsOnOrderFilter.Text)
Dim catId = cboCategoryFilter.SelectedValue

queryResult = From product In NorthWindDataSet.Products
              Where (product.UnitsOnOrder > units) AndAlso (product.CategoryID = catId)
              Select product

LINQtoSQL可能在抱怨查询中的CInt和SelectedValue调用。请尝试在查询之外捕获这些值:

Dim units = CInt(txtUnitsOnOrderFilter.Text)
Dim catId = cboCategoryFilter.SelectedValue

queryResult = From product In NorthWindDataSet.Products
              Where (product.UnitsOnOrder > units) AndAlso (product.CategoryID = catId)
              Select product

正如您所建议的,我尝试使用文字值,例如Dim units=2和Dim catId=3,但现在我在System.Data.EnumerablerRowCollection`1.GetLinqDataView()中遇到了“使用投影后无法创建DataView”异常。对我来说,能够像我最初发布的那样对查询结果执行查询是很重要的,因为条件是动态应用的。这意味着有时只使用单位,有时只使用catId,有时两个条件都使用。在过滤之后,您是否在queryResult上进行任何类型的投影,可能只选择Product.ID或其他内容?这似乎是导致错误的原因。另外,您是否尝试过在不调用AsDataView()的情况下将数据源绑定到queryResult?我尝试过使用文字值,如您所建议的,例如Dim units=2和Dim catId=3,但现在我在System.data.EnumerablerRowCollection`1.GetLinqDataView()处遇到了“使用投影后无法创建数据视图”异常。对我来说,能够像我最初发布的那样对查询结果执行查询是很重要的,因为条件是动态应用的。这意味着有时只使用单位,有时只使用catId,有时两个条件都使用。在过滤之后,您是否在queryResult上进行任何类型的投影,可能只选择Product.ID或其他内容?这似乎是导致错误的原因。另外,您是否尝试过只将数据源绑定到queryResult而不调用AsDataView()?