C# 从类访问Properties.Settings.Default?

C# 从类访问Properties.Settings.Default?,c#,C#,当我创建控制台应用程序时,我可以在VisualStudio2008Pro中右键单击该项目。单击属性>转到设置输入应用程序范围设置,然后从类似代码的位置访问它 Console.WriteLine(Properties.Settings.Default.MySetting.ToString()); 当我在类项目中执行相同的操作并尝试将应用程序范围设置分配给变量时,如 this.mySettingVariable = Properties.Settings.Default.MySetting.ToS

当我创建控制台应用程序时,我可以在VisualStudio2008Pro中右键单击该项目。单击属性>转到设置输入应用程序范围设置,然后从类似代码的位置访问它

Console.WriteLine(Properties.Settings.Default.MySetting.ToString());
当我在类项目中执行相同的操作并尝试将应用程序范围设置分配给变量时,如

this.mySettingVariable = Properties.Settings.Default.MySetting.ToString();
我在生成“当前上下文中不存在名称'Properties'时出错。”


我做错了什么?如何访问类项目的应用程序范围属性

确保已将名称空间包含在“usings”中

还要确保设置类是公共的。

因为没有配置文件 类库模型,应用程序 设置不适用于类 图书馆项目。例外情况是 VisualStudioToolsforOfficeDLL 项目,它可以有一个 配置文件


您的.settings文件是否位于项目的Properties文件夹下?

您忘记将设置添加到类库项目中。无法直接访问EXE项目的设置

为类库项目提供自己的设置是可能的,但这很麻烦。DLL不能有自己的.config文件,只有一个:app.exe.config文件。必须手动将DLL的app.config文件中的条目合并到app.exe.config文件中。使用文本编辑器进行复制和粘贴。这不是很容易维护


另一种方法是使这些设置成为类的属性。并让主项目中的代码从自己的设置初始化它们。或者干脆放弃设置,因为它们使用pita并使用.xml文件。

但是类库仍然可以有设置:)而不是应用程序范围……这就是OP提到的。我相信用户级别的设置就足够了。我一直在使用这个功能。相信我,它是有效的。您可以从主app.config文件中设置所有设置。或者web.config.Yes我在class@TooFat-有关设置文件的位置,请参阅我的编辑。设置访问修饰符已设置为“内部”(我认为这很好),我已更改为“公共”,但仍然存在相同的问题。谢谢。我一直在尝试读取我的.dll设置,但无法调用Properties.settings。