如何从Web服务方法代码中获取WS URL

时间:2012-05-22 19:40:21

标签: c# wcf web-services url

我从另一个团队继承了.net框架3.5上的WCF Web服务。 安装在沙盒上时,WS URL如下所示:

网址:https://< EnvironmentName > / fr / webservices /< someWebServiceName > .svc

我所要求的是在WS执行期间(运行时)从Web服务方法代码获取该URL。你有什么想法吗?

我倾向于认为应该有一个环境变量可以很容易地用来获取URL。任何贡献将不胜感激。

谢谢!

3 个答案:

答案 0 :(得分:4)

OperationContext可用,应提供您正在寻找的内容,具体为:

OperationContext.Current.EndpointDispatcher.EndpointAddress.Uri

答案 1 :(得分:3)

var context = OperationContext.Current;
var requestedUrl =  context.IncomingMessageHeaders.To.PathAndQuery;

答案 2 :(得分:0)

[更新]:在@MichelZ提供的帮助下,我已经能够解决我的问题了。这是代码:

var context = OperationContext.Current;
string requestedUrl = context.EndpointDispatcher.EndpointAddress.Uri.ToString();

谢谢大家!