我从另一个团队继承了.net框架3.5上的WCF Web服务。 安装在沙盒上时,WS URL如下所示:
网址:https://< EnvironmentName > / fr / webservices /< someWebServiceName > .svc
我所要求的是在WS执行期间(运行时)从Web服务方法代码获取该URL。你有什么想法吗?
我倾向于认为应该有一个环境变量可以很容易地用来获取URL。任何贡献将不胜感激。
谢谢!
答案 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();
谢谢大家!