首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >这些值是否属于配置文件或数据库?

这些值是否属于配置文件或数据库?
EN

Stack Overflow用户
提问于 2008-10-21 21:08:41
回答 4查看 588关注 0票数 6

我一直在ASP.NET configSections节中为每个“模块”存储多个值。我一直在想它们是否属于这些文件。

背景是:这些是部署的web应用程序的多个实例。所有用户都使用相同的数据库,但都有自己的设置。

我确信,开发和生产之间的区别在于配置文件。我知道的一些值应该包括:连接字符串、要使用的提供程序、设置调试等。

我已经用自己的规则和方法将所有常见的部分分解到类中。剩下的部分是每个站点中每个模块的杂项设置。我不确定的一些选项包括:

  • For ModuleA,显示/隐藏选项
  • for ModuleB,该字段使用的术语是
  • For ModuleC,允许最终用户执行X操作
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2008-10-21 21:14:01

这些听起来像是您可能想要在运行时为应用程序更改的东西,而不必修改app.config。我喜欢遵循的一条经验法则是,配置中的任何内容都应该用于部署或服务器配置。在这种情况下,您的设置似乎是在修改应用程序行为,所以我可能会将它们移到DB中,如果不是很费劲的话。

票数 4
EN

Stack Overflow用户

发布于 2008-10-21 21:14:09

ModuleA和ModuleC听起来可能是用户配置文件信息。如果用户不是动态的,但是您可以添加以后的功能,那么可以将它们移动到DB中。

我已经编写了一些应用程序,ModuleB也可以放在DB中。表单标签等东西可以很容易地放入DB中。如果稍后有人决定向所有表单标签添加或删除冒号,那么如果所有文本都存储在DB中,这是一件非常容易的事情。

票数 1
EN

Stack Overflow用户

发布于 2008-10-21 21:15:29

考虑一下当您需要编辑其中一个值时的情况。

如果该值在web.config中,则保存对该文件的更改将导致应用程序回收,从而不方便地丢弃当前用户。如果你的应用程序只在办公时间使用,那就没什么问题了(尽管你可能会接到一个迟到的人的愤怒电话)。但在国际用户的公共网站上,这可能是个问题。

如果该值在数据库中,则不会以这种方式影响应用程序的处理。

无论哪种方式,都要考虑这些值是否缓存在应用程序的内存中(web.config是)。应用程序变量中的数据库值,还是缓存中的数据库值?如果是这样,您可能不知道何时会发生更改。除非你想重新启动应用程序。

并且,适当的管理员需要哪些不同的访问和权限来进行更改?必须有人访问web服务器才能更改web.config,或者访问数据库(和表)才能更改这一点。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/223517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档