在visual studio中使用自定义构建配置

Ton*_*Nam 1 c# visual-studio buildconfiguration

在我的客户端应用程序中,我有时连接到localhost:1242\SomeService.asmx它,有时连接到 它someDomain:1242\SomeService.asmx.换句话说,有时我想在本地测试,有些时候需要远程测试.

VS为您提供的默认选项是调试和发布.我想创建自定义的,实际上我刚刚创建了一个新的构建配置: 在此输入图像描述

无论如何,如果我使用该配置,我怎么能在代码中知道?

我想做的事情如下:

if(Configuration.Type == ConfigTypes.Local)
    ConectionString = "localhost:1242:\SomeService.asmx";
else if (Configuration.Type == ConfigTypes.Remote1)
    ConectionString = "SomeDomain1:1242:\SomeService.asmx";
else if (Configuration.Type == ConfigTypes.Remote2)
    ConectionString = "SomeDifDomain:1242:\SomeService.asmx";
Run Code Online (Sandbox Code Playgroud)

释放模式往往更有效率?我该如何指定这些设置?

Dmi*_*try 5

您可以定义条件编译符号.
项目属性→构建选项卡→条件编译符号.
为不同的配置定义不同的符号,例如:

  • SRV_LOCAL 在"本地"配置;
  • SRV_REMOTE1 在"Remote1"配置中;
  • SRV_REMOTE2 在"Remote2"配置中.

然后在代码中:

#if SRV_LOCAL
    private const string SERVER = "localhost";
#elseif SRV_REMOTE1
    private const string SERVER = "SomeDomain1";
#elseif SRV_REMOTE2
    private const string SERVER = "SomeDifDomain";
#endif
Run Code Online (Sandbox Code Playgroud)