2014-04-02 113 views
0

我有一个C#程序,需要读取存储外部数据并存储在程序执行的各个阶段的程序要调用的类中。数据的存储不是一个大问题,因为它只有大约50个字符串,并且它永远不会超过这个数量,所以像字典这样的结构(我一直在使用的)是完美的。外部数据基本上是使用程序的人需要随时更改的用户选项从外部源读取数据到C#程序的最佳选择?

读取和存储外部数据的方法有两个主要要求。

1)信息已将设为外部。

2)信息必须能够相对容易地改变,对于那些绝对没有编程技能而且一般IT技能很低的人来说。

到目前为止,我已经提出了一些方法,但它们都有缺点,我觉得可能有更好的选择,我只是没有看到?

我一直在使用一个文本文件,只需使用dilimiting字符识别例如数据尝试:optionName=OptionData

我一直在使用一个Excel文件,并尝试使用EPPlus识别数据。这使得它不那么混乱,我可以使用颜色等来使电子表格更易于使用。

这两种方法都有同样的问题。文本文件或excel文件需要位于代码库的文件目录中,并且可能会让用户感到混乱,并且如果有多个版本的电子表格飞行,可能会造成问题。

如果配置文件不符合第二个要求,配置文件将是完美的。

我试过的最后一条路线是使用一个自包含的数据库,即SQLite,然而这与我感觉的文本和excel文件属于同一个屋檐下。然而,我是SQLite的新手,也许我错了?

任何想法,不胜感激。这不是一个非常罕见的问题,所以也许其他人面临并克服了这个问题?

+0

数据可以在网络共享的某个地方吗?是否有某些原因必须与可执行文件位于同一目录中?或者,你说“代码库的文件目录”。你的意思是源代码目录?但似乎不合理的是,可执行文件将从源文件的同一目录运行。 ...你的要求很混乱。 –

+0

对不起,如果它令人困惑,但是数据可以在网络共享上,但人们可能需要在他们单独的机器上的数据,并需要以不同的方式编辑数据,然后整个事情失去控制。 – Ben

+1

使用配置文件,然后编写一个GUI,使用该程序的人可以使用它来更新配置文件。 –

回答

1

配置文件将是完美的,如果它不是为第二个要求

我真的不想告诉你,但你whateve在文件中拿出的是一个配置文件,你唯一的办法为了方便编辑不尊重表单的人编写一个编辑器,这将花费(时间和金钱)。

我不会去用一些sql程序 - 最重要的是,它不会解决编辑器的问题。

XML文件映射到一个类,再加上一个小型的基于winform的编辑器就像它获得的一样好。

+0

好吧,这令人沮丧...就我个人而言,我觉得excel电子表格是最好的路线,因为颜色和网格等。它让我感觉更容易。 – Ben

+0

认真吗?我看到有些人“没有经验”拿到Excel表格来填写数据。它以“搜索例程”结束,在“应该”放置它的地方寻找具有合理值的字段。不是开玩笑。宇宙非常忙碌,建造那些不够聪明的人,如果他们被允许“填满”,就填写表格。 hommade程序可以运行更多验证。 – TomTom

相关问题