猿问

无法识别的配置部分 userSettings 但调试工作正常

我的应用程序在调试时运行良好,但是当我尝试在 Visual Studio 之外运行它时,它只是不断崩溃,我能在事件查看器中找到的所有内容是:


Framework Version: v4.0.30319

Description: The process was terminated due to an unhandled exception.

Exception Info: System.Configuration.ConfigurationErrorsException

   at System.Configuration.ConfigurationSchemaErrors.ThrowIfErrors(Boolean)

   at System.Configuration.BaseConfigurationRecord.ThrowIfParseErrors(System.Configuration.ConfigurationSchemaErrors)

   at System.Configuration.BaseConfigurationRecord.ThrowIfInitErrors()

   at System.Configuration.ClientConfigurationSystem.OnConfigRemoved(System.Object, System.Configuration.Internal.InternalConfigEventArgs)


Exception Info: System.Configuration.ConfigurationErrorsException

   at System.Configuration.ConfigurationManager.PrepareConfigSystem()

   at System.Configuration.ConfigurationManager.RefreshSection(System.String)

   at System.Configuration.ClientSettingsStore.ReadSettings(System.String, Boolean)

   at System.Configuration.LocalFileSettingsProvider.GetPropertyValues(System.Configuration.SettingsContext, System.Configuration.SettingsPropertyCollection)

   at System.Configuration.SettingsBase.GetPropertiesFromProvider(System.Configuration.SettingsProvider)

   at System.Configuration.SettingsBase.GetPropertyValueByName(System.String)

   at System.Configuration.SettingsBase.get_Item(System.String)

   at System.Configuration.ApplicationSettingsBase.GetPropertyValue(System.String)

   at System.Configuration.ApplicationSettingsBase.get_Item(System.String)

   at LeagueFPSBoost.Properties.Settings.get_UpgradeRequired()

   at LeagueFPSBoost.Program.CreateConfigIfNotExists()

   at LeagueFPSBoost.Program.Startup(System.String[])

   at LeagueFPSBoost.Program.Main(System.String[])

它工作正常,我只是不知道发生了什么。这是更多信息:


static void CreateConfigIfNotExists()

{

    var configFile = $"{Application.ExecutablePath}.config";

    if (!File.Exists(configFile))

    {

        File.WriteAllText(configFile, Resources.App_Config);

    }


杨魅力
浏览 395回答 2
2回答

九州编程

虽然这与 OP 没有直接关系,但这是用户在搜索此错误时被发送到的帖子,因此值得在这里指出,因为它是相关的。使用 system.Configuration.ConfigurationManager 4.7.0 添加 app.config 时,.Net Core 中会发生此错误:ConfigurationErrorsException: 无法识别的配置部分添加。(C:\Source\Repos\SFTP_Application\SFTP_Application\SFTP_Application_Console\bin\Debug\netcoreapp3.1\SFTP_Application_Console.dll.config 第 3 行)无法识别的配置节添加意味着:它缺少一个“节”,它认为这<add>是一个节。在 .Net Core 的情况下,它最初是为运行 .json 而构建的,但并不是每个人都喜欢单独运行他们的站点 .json。因此,您可以添加一个 .config 文件,但开箱即用该文件缺少一个<appSettings>部分。把你的钥匙放在里面,你就可以走了。<?xml version="1.0" encoding="utf-8" ?><configuration>&nbsp; <appSettings>&nbsp; &nbsp; <add key="ApplicationId" value="0" />&nbsp; &nbsp; <!--SqlConnections-->&nbsp; &nbsp; <add key="sql_Con_String" value="mydsstring" />&nbsp; </appSettings>&nbsp;&nbsp;</configuration>
随时随地看视频慕课网APP
我要回答