对通过亚音速返回的数据应用过滤器'like'子句

时间:2008-10-24 14:16:19

标签: c# asp.net

我有一个数据访问层,它从存储过程中返回数据。如果我将它绑定到asp.net 2.0中的gridview控件,则用户可以选择对该数据选择列表进行过滤,其中可以选择

的条件子句
  • =

一旦返回结果,我不想再次使用过滤器点击Db。

如果需要,我可以选择使用.net 3.5。我看着这个: http://weblogs.asp.net/jgaylord/archive/2006/05/31/Filter-A-GridView-After-The-Initial-Bind.aspx

并且不确定它的效率。

2 个答案:

答案 0 :(得分:1)

您是否在页面上使用SqlDataSource控件并绑定到该页面?如果是这样,那么你将不得不换档并进行手动绑定步骤。

你可以做一些事情,比如在ViewState或Session中存储DataTable,然后将其包装在包含过滤器的DataView中(或者不包含初始页面加载的过滤器)。然后你只需绑定到DataView。

答案 1 :(得分:1)

SubSonic Collections内置了过滤功能。您也可以在它们上使用LINQ过滤器。我这里没有具体的例子,但你基本上可以在亚音速集合上设置Where子句并运行一个特定的方法(不记得哪一个,因为我从未使用过这个功能)将过滤器应用于当前集合并返回一个新的。从我看到的,原始集合没有被修改,它只是有元数据来过滤它在内存中。