c# - 以编程方式在 .NET Web 窗体中设置 Web.Config AppSettings
问题描述
使用一系列网站,这些网站通过简单地循环存储在数据库中的用户指定值,以编程方式为每个网站设置一些 appSettings 值。
foreach (DataRow dr in result.Tables[0].Rows) {
ConfigurationManager.AppSettings.Set(dr["app_key_name"].ToString(), dr["app_key_value"].ToString());
}
这允许每个站点使用相同的代码库,但定义和访问不同的变量。
问题是(许多)网站之一似乎经常丢失以编程方式添加的 appSettings。在 Web.Config 文件中设置的少数 appSettings 仍然存在,但以编程方式添加的那些似乎有时会失败,或者在站点回收时不会重新加载。
如果这些变量不存在,是否应该在 Application_BeginRequest 上检查并重新添加这些变量?想法?
解决方案
您不需要调用 Save() 吗?:
config.Save(System.Configuration.ConfigurationSaveMode.Modified)
推荐阅读
- reactjs - 为什么请求会两次响应?
- python - 在 Pandas 添加 Excel 文件时出现问题 | 包装返回函数
- scale - 使用 IMU 数据和/或距离计解决 Visual Odometry 中的绝对比例问题
- pytorch - HuggingFace - config.json 中的 GPT2 标记器配置
- sql - Sas 使用不同的变量将一行拆分为多行
- javascript - 如何使用命令分配角色 - discord.js
- arduino - I2C 通信似乎过载或受阻
- powershell - 发布模块在 Azure DevOps Pipeline 上不起作用
- python - python中的时间序列聚类:DBSCAN和OPTICS给了我奇怪的结果
- html - 如何删除实际按钮/样式标签旁边的这个小按钮