我已将我的程序设置值放在我的解决方案中名为Common
的单独项目中。我有一个主项目(我们称之为A
),以及其他一些项目(B
和C
),然后是一个Common
项目。 Common
已添加到A
,B
和C
的引用中。我尝试使用以下两种方式访问Common
的设置值:
Settings.Setting
易于使用,但在阅读其他项目时非常棘手。ini
文件,用于读取和写入。现在我意识到他们的行为都是一样的,我想我错过了一个重点。主项目运行时可以访问设置值。当我更新我的设置时,它们会被保存,一切正常。
但有时我需要在A
未运行时从其他项目访问这些值。在我的例子中,项目B
由Windows服务触发。然后,它从数据库中读取数据,然后执行批处理文件。但它还需要访问Common
的设置。它们是空的串!
因此,如果我们考虑上面的第二种方法(从ini
读取)Common
在其Conf
静态对象(我用来读取和写入设置)中有一个名为{的值{1}}。只需调用ConnectionString
即可在主程序中访问该值。但是当Common.Conf.ConnectionString
使用时,此值为空。所以我无法访问我的设置值。
我不妨做的是创建一个函数,每当我需要这些值时从B
文件读取并再次解析它们,就好像Common项目不存在一样。
但是我还能做些什么让它发挥作用吗?
这是我ini
Common
密封类的代码,用于从Conf
文件读取/写入。
ini