Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 存储网站配置_Asp.net Mvc_Asp.net Mvc 3_Web Config - Fatal编程技术网

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
完全可以,只要您以某种方式确保文件不能由两个人同时访问(防止多个站点管理员同时登录可消除此问题)

如果您希望允许用户选择自己的主题、时区等,那么最好将其存储在数据库中