如何在本地举办silverlight项目

时间:2013-10-22 15:57:10

标签: c# wcf silverlight

我想调试我的程序,但我无法在VS 2010中托管我的silverlight项目 这是VS发给我的消息:

“您要调试的Silverlight项目使用Web服务。除非Silverlight是主机并且从包含Web服务的同一Web项目启动,否则调用Web服务将失败”

当我在网上搜索它时,我发现问题是我不是在本地做的 所以当我试图改变这一行时

endpoint address="http://xxx.xx.x.x/WebService/Service1.svc"

endpoint address="http://localhost/WebService/Service1.svc"

在这个文件上: ServiceReferences.ClientConfig

更新!!

我现在尝试这样做:

endpoint address="http://localhost:54502/Service1.svc"

我得到了错误,说:

the remote server returned an error:NotFound

这里:

 public int EndAddParticipant(System.IAsyncResult result) {
                object[] _args = new object[0];
                int _result = ((int)(base.EndInvoke("AddParticipant", _args, result)));
                return _result;

我应该怎么做才能改变它? 我看到我需要打开web.config文件中的调试,但它已经打开了。

1 个答案:

答案 0 :(得分:0)

你没有解释清楚,所以这里有一堆答案:

创建解决方案时,您应该告诉它在网站上托管。

你可以在事后做到这一点,但这是很多工作(对于一个新人),你最好重新开始并从你的silverlight项目中复制你的代码。

如果您这样做但是您尝试连接到另一个网站作为您的Web服务,则必须实现跨域配置文件。这打开了一个很大的安全漏洞。

如果你有2个项目,但你的问题只是" ServiceReferences.ClientConfig"如果文件没有指向正确的服务器,则需要在本地调试时包含PORT。看起来应该是这样的:

http://localhost:12345/Service1.svc

其中12345是本地Web服务的端口。您可以通过查看" Web"项目属性的选项卡。

希望其中一个能做到。如果没有,请提供更多信息,例如短语背后的所有重要信息,"它没有工作"!