[英]Assemblies, Web.config and App.Config — Building failover logic
如果程序集(.dll)找不到web.config文件,如何正确设计故障转移逻辑?
背景:我已经将我们的网站代码很好地模块化为两个不同的.dll。 为了简单起见,我们称它们为:
网站代码和.aspx / .ascx文件调用commonengine库以获取所有数据层内容。 对于连接字符串,commonengine而不是看app.config而是看网站的web.config文件(这是我自己的偏好-我更喜欢将生产常量全部放在一个位置)。 网站代码有时(很少)需要访问该web.config文件中的内容。 到目前为止一切都很好(即使不是完全纯净)。
这是麻烦。 我已经写了第三个模块。 它是Windows服务(具体地说,它是POP3检查器/处理器-处理邮箱请求,并将commonengine.dll用于某些数据层内容)。
问题是Windows服务调用commonengine.dll,而commonengine.dll在任何地方都找不到web.config,因为毕竟这是Windows服务(.exe),并且不在网站目录中。
当找不到web.config文件时,使用app.config的正确测试/逻辑是什么? 任何ASP.NET配置专家都可以在这里给我一些指导吗? 如果是,非常感谢。
我从来没有明确阅读过Web.config,而是使用System.Configuration类来读取它(例如System.Configuration.ConfigurationStrings [“ conn name”])。 它将自动转到ASP.NET应用程序中的Web.config和EXE中的app.config。
当然,您仍然必须考虑到config部分可能丢失的事实。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.