asp.net-mvc – ASP.Net MVC:存储应用程序和管理面板设置的位置? web.config文件?

使用ASP.NET MVC建立了一个像样的网站,我即将为“Admin”角色的用户构建一个“管理面板”来控制网站.具体来说,我构建的网站是企业的内部网站,它由一堆迷你网络应用程序组成,每个网站应用程序都需要不时进行配置和/或调整.

Web.Config是否存储适当的文件以存储这些应用程序设置?

它应该在一个单独的XML文件中吗?

DB表(或表集)?

目前,我没有可用的数据库,但也许以后我会.目前,我倾向于创建一个XML文件并在那里存储值.这是一种合理的方法吗?或者我错过了一些关于如何做到这一点的明显方法?

编辑:好的,这是我的抽象层(接口):

public interface IAppSettings
{
 IQueryable<string> GetValues(string component, string setting);
 void SetValues(string component, string setting, List<string> values, bool append);
}

我想我可以通过这种方式读/写Web.Config,另一种XML或DB.

你怎么看?

最佳答案 我会推荐你​​一个db.在多用户/多线程应用程序中写入文件可能具有挑战性,如果您不同步对这些文件的访问,则可能会出现问题,如果您需要,则更不用说事务访问.有一些轻量级
NoSQL databases可能非常有用,易于设置.

无论你选择什么,都要确保在数据访问层上创建抽象,这样你就可以轻松地切换到另一个方法,如SQL数据库,如果你愿意的话(在尝试NoSQL数据库之后,你可能不会:-)).

点赞