这是我遇到的一个问题(简化示例):假设我有几个表:
一个客户可以拥有多种产品,而一种产品可以具有多种功能。
在我的 asp.net 前端,我有一个包含客户信息的网格:
像这样的东西:
Name Address
John 222 1st st
Mark 111 2nd st
我需要的是按功能过滤客户的能力。因此,我有一个与客户相关的可用功能的下拉列表。
我目前在做什么:
1. 我DataTable
从存储过程中返回客户。我将它存储在视图状态
2 中。我从存储过程返回DataTable
连接到客户的功能。我将它存储在视图状态 3 中。在选择过滤器时,我使用新的 feature_id 过滤器再次运行存储过程,我再次加入其中以仅显示已选择功能的客户。
我的问题:速度很慢。
我认为可能的解决方案是:
1. 在页面加载时,在一个视图状态变量中返回所有数据。所以基本上是三个嵌套对象列表。这将使我的页面加载缓慢。2. 以某种聪明的方式执行 async loazing。如何?
有更好的解决方案吗?
编辑:
这是一个简化的示例,因此我还需要按通过 6 个表连接到表 Customer 的属性过滤客户。