2012-05-22 54 views
3

我从另一个团队继承了一个在.NET Framework 3.5上开发的WCF Web服务。 当在沙箱安装时,WS URL看起来是这样的:如何从Web服务获取WS URL方法代码

网址:https:// < EnvironmentName>/FR/Web服务/ < someWebServiceName> .SVC

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

我会倾向于认为应该有一个环境变量,可以很容易地用来获取网址。任何捐款将不胜感激。

谢谢!

+0

您能否重写您的问题以更清楚您的实际需求?谢谢 – MichelZ

+0

@MichelZ:我已经重写了这个问题。谢谢你的领导。 – G21

回答

4

的的OperationContext可用,并且应该提供您要查找的内容,具体包括:

OperationContext.Current.EndpointDispatcher.EndpointAddress.Uri 
+0

这个应该真的被接受.. – andreapier

3
var context = OperationContext.Current; 
var requestedUrl = context.IncomingMessageHeaders.To.PathAndQuery; 
+0

谢谢MicehelZ。你的细节很有帮助;-) – G21

0

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

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

谢谢大家!