2

我不太确定从哪里开始!!这个问题一直让我发疯!

我正在尝试开发一个使用的应用程序Windows Phone 8WCF虽然它可以正常工作,但我确实说好的,因为我经常遇到我现在遇到的相同的通信错误,当我停止我的网络时它最终会回来适配器并重新启动它们,但我必须这样做几次。

发生了一些事情,我仍然不知道是什么,但我的模拟器完全停止工作,它只会挂起,我会收到各种错误。我卸载了 sdk 8,hyper-v 几次,但仍然出现错误。然后我再次卸载该批次并删除了所有 hyper-v 文件夹、配置等......虽然我不确定我是如何修复它的,但当我Emulator WVGA 512MBEmulator 720P. 然后我换回来,不知何故它又开始工作了……没有意义!我知道!

无论如何,由于我的模拟器已备份,我只是无法让我的应用程序与从我的桌面运行的 wcf 服务进行通信。我不断收到以下错误:

{System.Net.WebException: The remote server returned an error: NotFound. ---> System.Net.WebException: The remote server returned an error: NotFound.
    at System.Net.Browser.ClientHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult)
    at System.Net.Browser.ClientHttpWebRequest.<>c__DisplayClasse.<EndGetResponse>b__d(Object sendState)
    at System.Net.Browser.AsyncHelper.<>c__DisplayClass1.<BeginOnUI>b__0(Object sendState)
    --- End of inner exception stack trace ---
    at System.Net.Browser.AsyncHelper.BeginOnUI(SendOrPostCallback beginMethod, Object state)
    at System.Net.Browser.ClientHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
    at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelAsyncRequest.CompleteGetResponse(IAsyncResult result)}

所以研究了错误“远程服务器返回错误:NotFound”,发现了很多文章,几乎尝试了所有建议的方法,但仍然没有运气!

这是 Microsoft 的一篇具体文章:http: //msdn.microsoft.com/en-us/library/windowsphone/develop/jj684580%28v=vs.105%29.aspx

虽然我还没有尝试过 IIS 解决方案,因为我才刚刚开始开发我的 wcf 服务,但我已经尝试过 IIS Express,但什么也没有!正如我之前所说的那样使用它来工作!

让我抓狂的是:

  1. 我可以在我的网络浏览器中访问 .svc 或通过 Http Activation

  2. 我可以在模拟器中访问路由器的网站

  3. 我可以在模拟器中访问互联网

所以它肯定能够访问并与其他设备通信,但它不会访问我的 wcf 服务。

在我发现的另一篇文章中(没有链接,但稍后会查找),它建议在applicationhost.config位于的位置添加第二个绑定%userprofile%\Documents\IISExpress\config\,当我这样做时,我收到一个错误,基本上告诉我我不允许有 2 个绑定,除非我multipleSiteBindingsEnabled设置为 true 并且它解决了这个问题,但是即使在使用我的完整 IP 地址而不是 localhost 引入第二个绑定并将我的服务更改为使用具有完整 IP 地址的 .svc 之后,仍然没有任何变化...同样的错误。

我不相信我会遇到任何错误,因为我在方法的开头有一个断点,并且它没有执行任何相关代码,所以(我认为)假设就是这样是公平的甚至没有到达那里!我只是不明白为什么它曾经工作过,现在突然停止了!显然与我的模拟器有关,让我开始悲伤但仍然​​没有解决方案!!!

有没有人有任何建议?我完全处于静止状态,不知道下一步该去哪里!!!极度沮丧!

4

1 回答 1

4

我弄清楚了问题所在!

我非常习惯在自己的机器上使用特定的防病毒/防火墙软件工作,但我使用的机器是测试机器,它使用标准的 Windows 防火墙!!

这就是问题!好吧,部分。不知何故,如果我关闭 Windows 防火墙服务,它仍然不会让我连接,但如果我打开防火墙并告诉它不要监视私有网络,它会立即工作!

我仍然不知道它最初是如何工作的,因为防火墙会一直打开,专用网络的监控也会如此,但不知何故它现在正在工作,所以我不得不假设这是问题所在。

阅读此内容以获取有关如何根据您的场景进行设置的更多信息:

http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj684580%28v=vs.105%29.aspx

就个人而言,我决定使用机器名称而不是 IP,因为我经常根据我连接到的网络为我的机器分配新 IP,但只是为私有和域网络添加了一个特定端口,从而确保我总是可以访问我的 wcf 服务。

希望这可以帮助。

于 2013-03-24T02:08:11.887 回答