我在ASP.NET C#4中编码。数据库是SQL Server 2012。
我有一个包含2000行和10列的表。我想在内存中加载此表,如果以任何方式更新/插入表,我想从数据库刷新内存中的副本。
我查看了SQL Server更改跟踪,虽然它完成了我需要的工作,但似乎我必须编写相当多的代码来从更改功能中进行选择 - 比我想要的更简单的场景编码我有。
针对此问题的最佳(最简单)解决方案是什么?我是否使用CacheDependency?
答案 0 :(得分:0)
我目前遇到了类似的问题:我正在实现一个返回包含50多列的表的休息服务,我想在客户端缓存数据以减少流量。
我正在考虑这种实施:
我的所有表都有字段
ID AutoIncrement (primary key)
Version RowVersion (a numeric value that will be incremented
every time the record is updated)
计算"指纹"我使用select
表select count(*), max(id), sum(version) from ...
删除记录会更改第一个值,插入第二个值并更新第三个值。
因此,如果三个值中的一个发生变化,我必须重新加载表格。