我应该在哪里把多个项目之间共享的属性

本文关键字:之间 共享 属性 项目 在哪里 我应该 | 更新日期: 2023-09-27 18:15:52

我有一个带有多个项目的。net解决方案。有几个项目需要访问一些解决方案范围的属性(键值对)。我可以把这些属性放在一个项目的Settings.settings文件中,但据我所知,其他项目将无法访问它们(对吗?)。

我应该…

  1. 把这些属性放在一个INI文件中,放在一个全局可访问的共享文件夹中,比如Environment.SpecialFolder.CommonApplicationData/MySolutionData

  2. 把这些属性放在注册表中?

  3. 其他地方吗?

编辑:

我忘了说,我希望能够在应用程序之外编辑这个小的属性列表,这样公共项目中的共享类就不能工作了

我应该在哪里把多个项目之间共享的属性

我通常创建一个额外的项目,唯一的目的是处理一个共享的app.config文件,并使其内容可供其他项目使用。

如果你想把它们设置。设置,我个人将创建另一个项目与公开的API返回所需的设置。然后你可以在任何你需要的地方使用dll,你可以通过只返回你需要的东西来获得创造性。

创建一个包含定义您的设置的接口的新项目。然后创建一个类来实现这个接口来读取/写入这些设置。在另一个答案中,一个很好的建议是使用App.Config(这也可以在应用程序外编辑)。

使用接口来定义您的设置将允许您在将来根据需要轻松开发和替换其他属性提供程序。

所有需要访问这些设置的项目都应该引用新项目来访问这些设置。