2010-02-15 59 views

回答

7

我用一个简单的试探法,以各配置变量分类成四类:

  1. 编译时间配置(改变与代码的变化一起进行) - 如果可能的话,则代码或组件内(如嵌入的资源),否则在web.config中
  2. Server实例的具体配置(SQL连接字符串,本地文件路径) - 在web.config中
  3. 应用(数据库)配置(功能选择和很少发生变化等全球性应用程序设置,如果有的话) - 在数据库中但没有UI
  4. 应用程序配置 - 在数据库中,通过管理界面
3

要真正回答这样的问题:

基本信息将不得不在web.config中本地存储(连接字符串等)

除此之外,其他信息可以存储在任一位置。

有它在数据库中意味着它更容易编写管理页面控制信息,而不是直接编辑web.config文件。

事情会多久改变一次?如果设置是一次性的事情,那么管理页面就会过度消耗,但是如果有持续的变化(添加新用户,类别等),那么他们可能是个好主意。

而且与数据库中的数据可以在系统

所以上执行远程管理,而无需对应用程序我不能让一个推荐更多的信息。

+0

我说的不是用户的设置而无法访问,我说的站点配置是管理员可以设置。 – luppi

+0

像特定模块的数据库连接字符串,模块的缓存持续时间等 – luppi

+0

您对此表示歉意吗? – luppi

0

在大多数情况下,每个页面上的每个模块都有单独的设置。因此,你必须将它们保存在数据库中。

5

存储在Web.config的配置设置将产生的影响,如果修改web.config文件,应用程序将重新启动,新的设置将有立竿见影的效果。 如果您在多台机器上运行应用程序,您将需要更新每台机器。

如果在数据库中存储的配置设置,您将需要手动重新启动您的Web应用程序或有一个函数(如管理员页/部位),以允许应用程序重新读取设置。

0

构建配置部分。它非常直接,适合您的需求。

相关问题