动态设置WCF端点

时间:2010-06-05 23:17:54

标签: wcf silverlight endpoint

我刚刚开始使用带有silverlight的WCF并且工作正常。但有一点让我烦恼的是.svc的地址。为什么在.config中静态设置? 在创建代理类的实例时是否可以设置它?如果是这样,有没有办法将其设置为当前地址? 我们的软件将部署在许多不同的域上,我们每次都无法更改配置。 svc将始终与silverlight页面位于同一个域中。 感谢。

2 个答案:

答案 0 :(得分:1)

您可以在.svc文件中使用factory参数指定自定义ServiceHost,然后您可以从代码中配置端点,包括相对地址。

请参阅: http://msdn.microsoft.com/en-us/library/aa395224.aspx http://msdn.microsoft.com/en-us/library/system.servicemodel.servicehost.aspx

另见answer

答案 1 :(得分:1)

“在创建代理类的实例时是否可以设置它?”

是的,你可以。只需将地址作为客户端构造函数的参数传递即可。您不需要自定义ServiceHostFactory。

“我们的软件将部署在许多不同的域上,我们每次都无法更改配置。”

此外,对于此要求,您不应要求在服务器端执行任何额外的工作。只有客户显然需要知道要连接的地址。