繁体   English   中英

Visual Studio将无法识别新的设置文件

[英]Visual Studio will not recognize new Settings File

我试图在Windows窗体应用程序中使用C#使用新的设置文件。

之后,我删除了旧的设置文件(Settings1.settings)并创建了一个新的文件(Settings.settings)。

当我开始编辑使用设置文件的代码时,我意识到新的设置文件未被识别。 例:

在此处输入图片说明

从我们公司创建的命名空间中使用了一个自定义的设置类,这会导致某些冲突。 如何将代码指向正确的设置文件?

在尝试复制您所做的事情时,我注意到Settings.Designer.cs文件的命名空间由此而来(我正在使用控制台应用程序进行测试)。

namespace ConsoleApplication1.Properties {


    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")]
    internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {

        private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));

        public static Settings Default {
            get {
                return defaultInstance;
            }
        }

        [global::System.Configuration.UserScopedSettingAttribute()]
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
        [global::System.Configuration.DefaultSettingValueAttribute("False")]
        public bool Test {
            get {
                return ((bool)(this["Test"]));
            }
            set {
                this["Test"] = value;
            }
        }
    }
}

namespace ConsoleApplication1 {


    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")]
    internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {

        private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));

        public static Settings Default {
            get {
                return defaultInstance;
            }
        }

        [global::System.Configuration.UserScopedSettingAttribute()]
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
        [global::System.Configuration.DefaultSettingValueAttribute("False")]
        public bool Temp {
            get {
                return ((bool)(this["Temp"]));
            }
            set {
                this["Temp"] = value;
            }
        }
    }
}

如果您会注意到命名空间从ConsoleApplication1.Properties转到ConsoleApplication1,那么如果将.Properties添加到新的Settings文件的命名空间中,则应该解决您的问题。

检查设置文件的名称空间,然后有两个选项:

  1. 在.cs文件的开头将using添加到该命名空间。

  2. 每次尝试使用设置文件之前,都要先编写它的整个名称空间。

我知道聚会晚了。 无论如何,对我来说解决方案是删除下面存储的设置

C:\\Users\\[username]\\AppData\\Local\\[your program name]\\

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM