【问题标题】:How do I read settings?如何读取设置?
【发布时间】:2011-07-25 21:16:56
【问题描述】:

我需要从我的 C# 程序的设置中读取一个字符串。这是我所做的:

  1. 右键单击我的项目并选择“属性”。
  2. 点击了“设置”标签。
  3. 通过单击“此项目不包含默认设置文件。单击此处创建一个”创建了一个默认设置文件。
  4. 添加了名称=ASHost、类型=字符串、范围=应用程序、值=一些的新设置。设置文件的访问修饰符是“内部”。
  5. 我点击了“查看代码”。然后查看命名空间是 SI.AS.CommonLogic.ErrorUtils.Properties。

但是当我在同一个项目中去上课并写下:

SI.AS.CommonLogic.ErrorUtils.Properties.Settings.

那么这就是 IntelliSense 将自动完成的范围。我想让它读/写:

SI.AS.CommonLogic.ErrorUtils.Properties.Settings.ASHost

我错过了什么?

注意: IntelliSense 无法自行查看“设置”。

update "设置后 IntelliSense 不显示默认值。键入

SI.AS.CommonLogic.ErrorUtils.Properties.Settings.Default.ASHost

手动给出一个 Invalid token 错误。

已解决

现在 IntelliSense 终于显示了 Default.ASHost。我将设置选项卡下的“访问修饰符”更改为“公共”。

【问题讨论】:

  • 它自己看不到Settings 是什么意思?通常你不会在顶部有命名空间using SI.AS.CommonLogic.ErrorUtils.Properties;,所以它不会直接显示在智能感知中。您是否保存所有文件Ctrl+Shift+S
  • 头晕目眩。我怀疑这可能是问题所在(Ctrl+Shift+S)。谢谢。
  • 啊酷。欢迎您 =)

标签: c# visual-studio-2008 settings


【解决方案1】:

差不多了。你错过了Default

Properties.Settings.Default.<Your_Setting_Name>

【讨论】:

  • 我认为他的意思是他在设置上智能感知。但他想让他定义的设置出现在智能感知中。
  • 应该出现的...我刚刚检查过(在 VS 2010 中)
  • SI.AS.CommonLogic.ErrorUtils.Properties.Settings 之后没有默认值。
  • 重启VS,看看问题是否消失。有时智能感知会混乱。 + 您是否更改了 VS 上可能导致智能感知无法正常工作的任何设置?
【解决方案2】:
  1. 您将范围更改为User。应用程序设置为 ReadyOnly。
  2. 设置在:

    SI.AS.CommonLogic.ErrorUtils.Properties.Settings.Default.ASHost
    

【讨论】:

  • 那很好。我想将其更改为用户,因为我也必须写信给它。但我仍然无法访问它进行阅读或写作。在 SI.AS.CommonLogic.ErrorUtils.Properties.Settings 之后 IntelliSense 完全为空。
  • (1) 你能编译你的项目,然后再试一次。 (2) 您是否尝试在您的应用程序之外访问它?因为 Settings 是一个内部类。
  • 是的。它现在确实有效。它要么是访问修饰符,要么是保存所有文件。非常感谢。
【解决方案3】:
SI.AS.CommonLogic.ErrorUtils.Properties.Settings.Default.ASHost

【讨论】:

  • 我也无法访问默认值。
【解决方案4】:

正如其他人所说的那样,Settings 类是在编译时生成的。因此,您需要在添加新设置后至少编译一次,然后该设置才会显示在 Intellisense 中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-16
    • 1970-01-01
    • 2014-04-02
    • 2015-12-08
    • 1970-01-01
    • 2023-03-07
    • 2013-08-01
    相关资源
    最近更新 更多