1

我创建了一个使用服务的 Silverlight 应用程序。该服务在该解决方案的 Web 项目中定义。silverlight 应用程序引用它并使用它。当我在 Visual Studio 中运行应用程序时,一切都在我的开发机器上本地运行。

我注意到 VS 给出的 url 是:http://localhost:50453/Default.htm

但是当我部署这个(通过文件系统复制部署选项)时,网页启动并且它看起来不错,除了使用该服务似乎有问题。在 Silverlight 应用程序中,如果我查看参考设置,服务的 url 是:http://localhost:50453/SilverlightService.svc这可能是错误的,因为我部署到的服务器不知道端口 50453 上的内容。

所以我试图在我的开发机器上将此端口更改为 80,但我不走运。我的 Web 项目没有任何可以更改端口的属性。打开的 URL 和 URL 锁定在http://localhost:50453:-/

如何更改我的开发环境以使生产环境与端口 80 匹配?

4

1 回答 1

0

当然,您可以在项目属性中更改 Web 项目的 URL,但这不是一个好的解决方案,因为您在从远程计算机访问 SL 应用程序时会遇到同样的问题。

您需要以编程方式设置服务 URL,如上:

ServiceReference1.Service1Client svc = new ServiceReference1.Service1Client();
Uri serviceUri = new Uri(System.Windows.Browser.HtmlPage.Document.DocumentUri, "Service1.svc");
svc.Endpoint.Address = new System.ServiceModel.EndpointAddress(serviceUri);

此解决方案使用与您访问 Silverlight 应用程序相同的 URL。

于 2013-08-01T14:08:32.517 回答