我在我的 C# 应用程序 (WPF) 中使用 SQLite 本地数据库。
您不应该打开一次数据库连接并在开始时加载所有数据(而不是每次需要数据库中的一些数据时都打开连接)?
我的问题是这些数据应该存储在应用程序中的什么位置。
我应该创建一个包含多维数组或多维列表中所有信息的静态类。还是有更好的方法来存储信息?
这些是该任务最常用的工具:
(根据我的推荐顺序)
http://en.wikipedia.org/wiki/NHibernate
如果不了解您的业务逻辑,就无法正确回答您的问题。但是,我可以告诉您,没有大多数应用程序不会将整个数据库加载到对象中,而是在需要数据时查询数据。
对于您问题的另一部分,您为什么不创建 ADO.Net 数据模型?如果您使用的是 vs 2010,则可以使用模板,只需在打开新项目后在搜索框中输入模型即可。
看看数据集和 Visual Studio 的数据集设计器工具。
如果您使用这种方法,您可以从不错的功能中受益,例如将 tghe 数据序列化为 xml 等等。,
是的,您的初始解决方案是可以的,为了防止您的应用程序和数据库之间的流量,您应该将数据保存在内存中,例如您之前提到的属性,但您可以受益于缓存优势。
如果您使用的是 .Net framework 4.0,则可以使用System.Runtime.Caching,否则,您应该熟悉 Enterprise application block 5.0 或更低版本。