我已将web.config中存在的用户定义值移动到数据库。我从 global.cs 文件的appliction_start事件中检索数据库中的值,并将这些值存储在字典集合中,并将在整个应用程序中使用。
现在我的问题是,如果我更改数据库中的任何值,则不会反映更改,以反映我必须重置IIS的更改。因此,要立即或在特定时间间隔之后反映更改,可能会再次或以其他方式调用application_start事件。
请帮忙......
答案 0 :(得分:0)
您可以在应用中设置缓存,并每隔X分钟刷新一次缓存,因此您知道这些值不会超过X分钟。
如果它们必须是最新的,那么您可以在数据库中存储“最后修改”的值,并在每次使用现有数据之前检查它,如果更改则重新加载。
您可能也可以使用SqlDependency
类在发生更改时收到通知,但我从未这样做过,因此我不知道详细信息。
答案 1 :(得分:0)
您可以重新启动IIS。打开命令行并输入:
iisreset
OR
重启应用程序,可以使用IIS管理器完成,也可以手动更改Web配置(在Web配置中添加新的空行)
其他解决方案: