嗨我已经看到了这个问题的几个答案,但我有一个特殊的情况。当用户单击后面代码中的下拉列表时,我想控制带有网格视图控件的ASP.NET Web表单上显示的内容。像这样:
If ddlProducts.SelectedValue <> "-1" Then
gvCategories.DataSource = obj.getAll().Where(Function(c) c.productId = Integer.Parse(ddlProducts.SelectedValue)).Skip(0).Take(10)
gvCategories.DataBind()
在使用ObjectDatasource时,我收到错误 -
Both DataSource and DataSourceID are defined on 'gvCategories'. Remove one definition.
但是,我需要在代码后面对列表进行过滤,并且只能将其设置为Datasource NOT DatasourceID。所有这些都强调不需要背后的代码。我该怎么做呢请原谅我,如果它已被回答,但我没有看到它可能是因为我很匆忙。谢谢。
答案 0 :(得分:1)
您可以使用ObjectDataSource
过滤列表,您可以通过向其添加新的SelectParameter
并以某种方式(例如以编程方式)传递参数的值来实现。然后,该值将传递给您的数据提供程序类(ObjectDataSource
请求数据的那个),以便您可以在查询数据源时使用它。