Я пишу простое небольшое веб-приложение для форумов (для развлечения и для заточки старой пилы), и у меня проблемы с AppSettings.
Я планирую сохранить эти настройки в отдельном файле (Settings.config), которому я предоставлю права на изменение учетной записи пользователя веб-процесса и сохраню все редактируемые настройки в этом файле (например, заголовок форума, описание и т. Д.).
Это мой код:
[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, поэтому пользователь процесса - это я, владеющий файлом в любом случае).
Любые идеи?