c# - app.config 的困境 - 为什么我不能嵌入应用程序配置?

标签 c# .net configuration app-config startup

我有一个应用程序必须在任何普通 Windows 安装(从 Vista 到 10)上运行。
在 Vista 上安装了 Framework 3.5,在 Win10 上安装了 Framework 4.6。
要在两者上运行,应用程序必须针对不同的框架。
因此我使用了多个 supportedRuntime app.config 中的条目,这使得这成为可能 - 工作完美。

现在我遇到了第二个问题,我必须将 app.config 与应用程序一起发布。
一个问题,因为应用程序的分布方式,app.config 可能会丢失,整个事情就会崩溃。

所以想法是将 app.config 嵌入到可执行文件中,违背了文件“用户应该能够更改它”的原则。
在这种情况下,用户应该不能更改它,因为它不再有效。

这是我目前的发现:
How do you embed app.config in C# projects?
How do I compile my App.config into my exe in a VS2010 C# console app?
本质是“你不能那样做”。

那么问题是:
有没有一种方法可以嵌入 app.config 或者是否有另一种方法可以在 app.config 以外的地方指定 supportedRuntime

好像没有compiler switches解决配置问题。
是否有进一步的工具来操作配置?

最佳答案

我来晚了。 我使用 7zip 自解压功能来创建一个存档,它将在用户的临时文件夹中解压并运行指定的 exe。这样你就可以将你的 exe 和你的 app.config 放在一起。

关于c# - app.config 的困境 - 为什么我不能嵌入应用程序配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38845432/

相关文章:

.net - VB.Net : How to use an Object data source in report (. RDLC)

ruby - 跨网站和 gem 客户端处理用户身份验证的最佳方式

node.js - Nginx 和 node.js 未知指令

c# - WebApi.UnityDependencyResolver 没有实现 Microsoft.Practices.ServiceLocation.IServiceLocator。参数 : commonServiceLocator

c# - XML 的 XSD 验证有多昂贵?

c# - .NET 中的 XPath 选择节点

.net - System.Activator.CreateInstance 返回 null

c# - 如何获取 Visual Studio Intellisense 工具提示以显示 .NET Framework 3.5 的说明?

c# - 将 OData Uri 转换为等效的 Linq 表达式

linux - 无法在 SuSe 上测试 REDIS