gpt4 book ai didi

wcf - 根据配置更新服务引用地址?

转载 作者:行者123 更新时间:2023-12-01 13:00:44 25 4
gpt4 key购买 nike

在调试期间,我添加了一堆服务引用,指向调试机器上的服务。有没有什么方法可以根据配置自动重新生成服务引用?我真的不想在准备好发布时将它们全部指向发布服务器,然后在我需要调试时返回并再次更改它们,等等。

基本上,我想要以下(自动完成):

最佳答案

无法对配置进行条件编译。我在某些项目中使用的一件事是在代码中使用#if 语句来更新配置中的服务引用。类似于下面的代码:

static void Main() {
TestClient client = new TestClient();
UpdateAddress(client.Endpoint);
}
static void UpdateAddress(ServiceEndpoint endpoint) {
string address = endpoint.Address.Uri.ToString();
int svcIndex = address.IndexOf(".svc");
int serviceIndex = address.LastIndexOf("/", svcIndex);
address = address.Substring(serviceIndex);
#if DEBUG
address = "http://localhost/App" + address;
#else
address = "http://myserver" + address;
#endif
endpoint.Address = new EndpointAddress(address);
}

另一件事,我没有做过,但我认为可能是可能的,那就是查看 msbuild 目标。 IIRC 你可以从 msbuild 执行任意命令,所以你可以根据构建配置使用自定义目标,并运行一些命令来更新你的配置文件。

关于wcf - 根据配置更新服务引用地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6126192/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com