WebService获取本地地址而不是ip地址

时间:2011-04-25 13:21:13

标签: silverlight wcf web-services

我试图运行一个silverlight应用程序。我有一个知道ip的服务器,我正在尝试在这个服务器上安装sl应用程序。

问题是,如果我使用ip访问服务:http://serverip:port/Service.svc,服务运行没有问题,但是,服务显示: svcutil.exe http://serverLocalAddress:port/Service.svc?wsdl

所以,当我从本地域运行应用程序时,我没有问题,但是,当我从外部域(例如我家)运行时,应用程序无法正常运行,在服务中显示错误

我已将ServiceReference.ClientConfig端点地址配置为:“http:// serverip:port / Service.svc”。

还有其他地方可以改变以解决这个问题吗?

问候。

爱德华。

1 个答案:

答案 0 :(得分:0)

您可能希望在代码中明确说明您的地址,而不是在ClientConfig中。这可以让您更好地控制您的网址,您可以将事件移动到您的应用程序InitParams。

为此,请修改服务声明以包含地址并更改此

_proxy = new WCFServiceClient();

_proxy = new WCFServiceClient("BasicHttpBinding_IWCFService", "http://serverip:port/Service.svc");

我不建议像我在这里所做的那样对地址进行硬编码,但这应该让你开始。