2011-04-26 50 views
0

我的应用程序有一个主数据库,其中有大约50个表用作查找表,并将提供数据来填充组合框和任何其他控件以及一些应用程序设置表。所以我正在考虑创建这些主表上下文并加载实体,并在用户登录时将其添加到应用程序生命周期对象中,以便在需要时可以在整个应用程序中访问它们。不过,我也想到了一种不同的方法,即在我需要加载组合框时,下载所有表的数据集并将其保存到独立存储并从该数据集读取表。加载所有表的数据集大小约为1.2MB。我不知道应该关注哪一个,以及这些方法相比之下的缺点是什么,还有处理这种情况的优雅方法。任何人都可以请建议我吗?查找表Ria服务

谢谢, Ajay。

回答

0

任何解决方案遇到的第一个问题是同步,当这50个表中的任何一个发生变化时。你怎么知道这个改变是否发生在服务器端应用程序和Silverlight客户端的范围之外?

我只是简单地选择使用输出缓存与RIA服务,并把合理的缓存过期到位,以确保变化合并在一个合理的时间间隔。

http://blogs.msdn.com/b/digital_ruminations/archive/2011/01/05/ria-services-output-caching.aspx

+0

其实这些表应该不会改变,他们可能很少仅如果有任何添加到应用程序新需求的变化。我已经研究过你给出的链接,并且我正在考虑,与将所有结果加载到对象上下文相比,这将如何产生任何影响。 – ajay 2011-04-26 19:53:09

+0

此外,如果我使用隔离存储下载数据集为XML有没有一种方法来使数据库无效,如果在数据库中有任何更改就像自动数据库服务器缓存失效在asp.net – ajay 2011-04-26 20:32:57

+0

我同意,但请记住你不能强制用户使用比默认1MB更多的隔离存储空间,因此您的逻辑中必须使用这种默认存储空间。 – 2011-04-26 20:52:42