c# - .Net 3.5 中的 Configuration.Save() 在部署/ Release模式下不起作用

标签 c# .net configuration save app-config

根据 msdn 社交论坛的建议, http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/ab59671a-f0a3-4182-ba5b-7fa17f0a6118?prof=required

我关闭了 Visual Studio 托管进程,并验证了当仍在调试配置下运行时,更改是否保存到 MyApp.exe.config 文件而不是 MyApp.vhost.exe.config 文件。但是,当我将具有发布配置的应用程序部署到 C:\UAT\MyApp\时,它不会将更改保存到 C:\UAT\MyApp\Application Files\MyAPP_1_0_0_0\MyApp.exe.config 文件。我检查了文件权限并确保未检查 MyApp.exe.config 文件的 ReadOnly。

此外,我还尝试了SaveAs(persist\MyApp_yyyymmdd.config)。在 Visual Studio 2008 中以 Debug模式运行时(虚拟主机关闭),它会在 bin/Debug 下创建“persist”文件夹并将文件保存在那里。但是,C:\UAT\MyApp\中的部署版本不会创建此类文件夹。我确保 C:\UAT 下的所有文件夹都没有设置为只读。

我正在使用 Visual Studio 2008。感谢对此的任何帮助。

跟进: 在部署应用程序之前,我还确保将“项目属性”中的“安全性”设置为“这是一个完全信任的应用程序”。

最佳答案

用户设置的值通常保存到用户个人资料中的“user.config”中,尤其是对于已发布的应用。 exe.config 并不是真正要在运行时编辑的,因为它又回到了安装(受系统保护)与文档(用户)问题,特别是对于非管理员而言。

检查位置,例如:

{user profile}\AppData\Local{appname}\{appname}.exe_{gibberish}\user.config

关于c# - .Net 3.5 中的 Configuration.Save() 在部署/ Release模式下不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1518294/

相关文章:

c# - Visual Studio 运行 .NET 应用程序中的调试日志文件位置

c# - 如何使用 System.Net.HttpClient 检索部分响应

c# - 为什么密封类型更快?

asp.net - 停止从 IIS 7.5 中的父 ASP.NET 应用程序继承 web.config

c# - C# WPF 中的内存泄漏

c# - 通过AJAX MVC下载Excel文件,而无需将文件保存在ASP.Net/C#中的服务器上

c# - 根据某些条件从列表中删除多个对象

javascript - 大纪元 .NET 到 JavaScript(休息时间?)

apache - 重新安装应用程序时如何保留 Apache Tomcat7 配置文件

gcc - 如何配置 gcc 默认使用 -no-pie?