我正在编写一个基础的小型论坛Web应用程序(出于兴趣和锻炼技巧),但在AppSettings方面遇到了一些问题。
我的计划是将这些设置存储在自己的文件(Settings.config)中,授予Web进程用户帐户修改权限,并在该文件中存储所有可编辑的设置(例如论坛标题、描述等)。
以下是我的代码:
[AcceptVerbs(HttpVerbs.Post)] public ActionResult Edit(FormCollection collection) { try { var config = WebConfigurationManager.OpenWebConfiguration("~/Web.config");
config.AppSettings.Settings["SiteTitle"].Value = collection["SiteTitle"]; config.AppSettings.Settings["SiteDescription"].Value = collection["SiteDescription"];
config.Save(ConfigurationSaveMode.Minimal, false); ConfigurationManager.RefreshSection("appSettings");
return RedirectToAction("Index"); } catch (Exception ex) { ModelState.AddModelError("_FORM", ex.Message); return View("Index"); } }
但运行它会返回以下错误:
A configuration file cannot be created for the requested Configuration object.
我已经尝试将设置文件的完全权限授予所有用户,但没有效果(当前只是在Cassini下运行,所以进程用户是我,无论如何都拥有该文件的所有权)。
有什么想法吗?