我已经搜索了很长一段时间并没有想出任何东西,所以现在是寻求SO帮助的时候了。
我有一个搜索功能,可以同时搜索两个表中的值,只显示最新的记录。其中一个表将来自一组四个表,这些表由用户必须从中选择的下拉列表选择。所有这四个表都有不同的列名用于类似的数据,所以我必须根据下拉选择决定放在Eval()中的内容。
以下是在ListView中填充一个单元格的代码:
<%# If(CheckOverrides(Eval("MemUniqID"), "txtFirstName") <> Nothing,
CheckOverrides(Eval("MemUniqID"), "txtFirstName"),
Eval(FindDBField("txtFirstName"))
)
%>
基本上,我必须将唯一标识符和另一个参数传递给函数以查找最新记录(位于覆盖表中)。如果函数不返回任何内容,则将显示原始数据(位于四个表中的一个中)。从FindDBField函数返回表的正确列名。
问题在于,如果搜索结果太多,数据库连接就会退出并自行关闭。我一直在尝试找出一种更好的方法来减少对数据库的调用(每次调用CheckOverrides()和FindDBFields()都会查询db一次,我有大约8个字段我是拉入每行的ListView,这样每行返回16个查询),但我似乎无法正常处理代码。
有什么建议吗?谢谢!