在应用程序中存储不经常更改的信息的最佳方法是什么?

3
我有一个商店信息列表。
每个商店都有一个地区,一个区域和一个商店编号。
我现在的做法是:
我有一个Store类,以及一个元素类型为Store的List列表。
在每个应用程序中,我不得不添加这个长长的StoreList.Add(new Store() { ... })列表,看起来很糟糕,不整洁,也不方便。所以我正在寻找一种方法,在多个解决方案/项目中使用此信息。
我不想使用数据库,因为我并不想让简单的脚本变得更加复杂。在这种情况下,我应该使用DLL吗?
2个回答

7
你说你不想使用数据库,但也许这并不是一个坏选择。你可以将信息存储在XML文件中,并在应用程序启动时读取该文件。如果将这样的信息放在类中,然后作为dll,会使事情变得复杂。如果您需要修改存储号码,您必须在运行应用程序的计算机上部署该dll,尽管在计算机上修改XML也是必需的,但在我看来这更容易些。
此外,如果您将该信息存储在某个中央数据库中,并在应用程序启动事件上加载该信息,它将为您提供更好的维护应用程序和减少客户端/部署更改的选项。

可能意味着需要维护多个XML文件,是吗? - TGH
@TGH,我在我的答案中添加了这个,是的,它可以,但比更新dll更容易。但是将此信息放在集中的位置是最佳选择。 - Habib

1
问题不在于是否需要数据库,而在于应用程序关闭后是否需要存储数据。现在,可以使用数据库(可能是嵌入式数据库)或文件(最可能是xml文件)。如果所有数据都存储在代码中(实际上不是最佳选择),那么是的,您可以将该代码移动到类库项目中,并将其分发到任何需要它的地方。但是,至少我会这样做:
- 将列表项移到一个xml文件中 - 创建一个类来读取此文件,并将其加载到列表中 - 将xml文件添加到项目中并将其标记为嵌入资源(因此它将与dll一起打包) - 您可以直接从程序集中读取xml文件(在SO上检查如何执行此操作)
希望这有所帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接