.Net Core (WPF) 和单个 exe 中的应用程序设置

问题描述

要迁移应用程序,我想继续使用仍然随 .Net5 一起提供的普通旧设置(App.Config、Settings.settings 等)。
我需要一个没有附加依赖项的简单内置解决方案。

建议的方式似乎是 appsettings.json 或类似的。
为了与 WPF 一起使用,您需要添加一些额外的依赖项,这些依赖项在 将其发布为单个 exe(非自包含)。对于简单的应用程序来说,它是过分的。

我按照这里的步骤操作: Equivalent to UserSettings / ApplicationSettings in WPF dotnet core Alexander 接受的答案适用于构建的普通 exe。

这些是生成的文件
MyApp.dll
MyApp.dll.config
MyApp.exe

用编辑器修改“MyApp.dll.config”直接反映代码中修改的数据。

MessageBox.Show(Settings.Default.SomeConfigValue);

可以使用

显示使用的配置文件
var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
MessageBox.Show(config.FilePath);

显示
C:\Projekte\MyApp\MyApp\bin\Debug\net5.0-windows\MyApp.dll.config

不幸的是,这对于单个 exe 失败

这些是生成的文件(在发布文件夹中)
MyApp.dll.config
MyApp.exe

修改“MyApp.dll.config”或“MyApp.exe.config”无效。该文件似乎没有被框架使用。
上面的消息框现在显示
C:\Projekte\MyApp\Publish.config

如何让内置配置系统与单个exe一起工作?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...