在 WCF 中设置环境变量
本文关键字:环境变量 设置 WCF | 更新日期: 2023-09-27 18:32:00
我有一个WCF应用程序,它有2个默认配置,调试和发布。我还添加了两个发布配置文件,测试和实时。在我的代码中,我使用了一个具有如下构造函数的类:
public MyClass(string server)
{
server = server.ToLower();
switch (server)
{
case "live":
LogonToLive();
break;
case "test":
LogonToTest();
break;
}
然后,我在整个应用程序中使用它,如下所示:
using(var ax = new MyClass("test"))
{
// do stuff in my Test Environment
}
我想做的是在我的 web.config 中设置一些变量,这些变量将根据我设置的配置/发布配置文件自动将MyClass("test")
替换为正确的服务器。这可能吗?
您可以使用条件编译的跟踪常量来确定构建配置,并从"Configuration"类中的属性中提取所需的值,或者其他内容:
public static string Server {
get {
#if DEBUG
return ConfigurationManager.AppSettings[key0];
#else
return ConfigurationManager.AppSettings[key1];
#endif
}
}
我认为确定发布配置文件是另一壶鱼,可以这么说。
为什么不为服务器名称添加一个应用程序设置,并在运行时读取它以找出服务器。