【发布时间】:2019-08-05 20:08:31
【问题描述】:
我想将一些数据从我的 sql 数据库加载到 RAM 中,以便在 C# winform 应用程序中的所有表单中使用。我尝试了 REDIS,但它的问题是我无法在数据库中保存我的对象类型列表或用户定义的类型。 例如,
在应用启动时,我将数据从 sql 加载到 RAM
在发布期间,所有表单均可访问数据
当应用程序关闭时,数据保存回sql数据库并 更新更改的数据(如果有)
这可能吗?
我已经在做的事情如下,在应用程序启动时,我将所有数据从数据库加载到 XML 文件,然后我得到了我想在表单中使用的数据,我反映了对数据的任何更改立即在 XML 文件中。当应用程序关闭时,我用 xml 文件中的内容更新 sql 中的数据。
【问题讨论】:
-
一旦你加载了数据,你认为它还会存储在哪里? (假设有足够的可用 RAM)我认为您真正要问的是 stackoverflow.com/questions/4247807/… 的副本,但我们需要更多信息/一个 MCRE(最小的完整可重现示例)
-
@AustinTFrench,是的,我知道如果我加载数据,那么是的,它在内存中,我的观点是我如何从一个表单加载数据,然后使其可以通过所有其他表单访问?
-
为什么你认为从 XML 读取比 Redis 更快?
-
@SaeidAmini,我在哪里说过从 XML 读取更快?我说 REDIS 不允许您将用户类型数据(例如对象类型列表)轻松存储在数据库中,所以我使用 XML,在您发表评论之前阅读整个文本
-
我没说你说,其实我说你想。你想使用 XML 而不是 Redis,我认为这不是一个好主意。大多数时候 Redis 用作缓存系统。