我还没有找到确切的答案,所以:
想象一个 3 列的字典表,其结构如下:
整数 | 字符串1 | string2(其中 int+string1 是 pk)
表有超过 20k 行,它的查询非常广泛,pk
以返回string2
值
这里最好的方法是什么?
1.直接LINQ DB请求
亲:通过PK查询确实非常快
缺点:每秒可能有几百次调用数据库服务器
2.预加载数据一次到DataTable对象
pro:所有数据都在本地.net内存中(无需每次都去db)
缺点:使用 LINQ 需要调用AsEnumerable()
返回DataTable
可枚举对象DataSource
的 LINQ 查询。在这里对对象的 LINQ 查询比调用 DB 更有效吗?这里使用PK约束吗?
3.将所有表预加载到Dictionary<string, string>
keyint.ToString()+string1
和value所在的位置string2
pro:始终使用 PK 约束,字典直接以正确的值响应
缺点:是比1好还是2好?
4.你更好的主意
我的好奇心正在等待答案...