Asp.net mvc 存储网站配置
我正在寻找一个地方来存储我的网站,将通过网站的管理面板(如选择主题,更改主页标题等)更改配置。正如我所知,Asp.net mvc 存储网站配置,asp.net-mvc,asp.net-mvc-3,web-config,Asp.net Mvc,Asp.net Mvc 3,Web Config,我正在寻找一个地方来存储我的网站,将通过网站的管理面板(如选择主题,更改主页标题等)更改配置。正如我所知,web.config是只读的,并且我肯定不想为此使用DB。那么,解决这个问题的标准方法是什么 当然我不想用DB来做这个 嗯,你没有太多选择了。您可以始终使用文件,但在多线程环境(如ASP.NET应用程序)中,您需要同步对文件的访问,以确保两个线程不会同时尝试写入文件,或者当一个线程写入文件时,另一个线程不会从文件中读取。你可以用一只手。就这个文件的格式而言,您可以使用任何您觉得合适的格式:C
web.config
是只读的,并且我肯定不想为此使用DB。那么,解决这个问题的标准方法是什么
当然我不想用DB来做这个
嗯,你没有太多选择了。您可以始终使用文件,但在多线程环境(如ASP.NET应用程序)中,您需要同步对文件的访问,以确保两个线程不会同时尝试写入文件,或者当一个线程写入文件时,另一个线程不会从文件中读取。你可以用一只手。就这个文件的格式而言,您可以使用任何您觉得合适的格式:CSV、XML、JSON,如果您愿意,甚至可以使用二进制序列化。如果您出于某种原因不想使用
DB
我认为XML
是保存配置的最佳选择。就像web.config
访问此文件时,请确保使用
lock
,这样就不会出现不同步的灾难…如果只是用于站点管理,请设置应用程序范围的设置(如标题)然后可以存储在文件中,XML
或JSON
完全可以,只要您以某种方式确保文件不能由两个人同时访问(防止多个站点管理员同时登录可消除此问题)
如果您希望允许用户选择自己的主题、时区等,那么最好将其存储在数据库中