从Windows Phone 8 Emulator调用自托管WCF服务

时间:2013-05-16 05:50:55

标签: wcf windows-phone-8 hyper-v self-hosting windows-phone-8-emulator

我的自主WCF服务适用于域上的任何浏览器,也适用于WinForm客户端。在Windows Phone 8应用程序中,我可以创建服务引用。尝试从模拟器中运行的应用程序中使用该服务,导致System.Net.WebException:远程服务器返回错误:NotFound。

我做了什么:

  • 允许网址注册
  • 指定端口的防火墙入站规则
  • 启用了WCF服务,HTTP激活(Windows功能)

在仿真器的Hyper-V设置中,它列出了4个网络适配器:Windows Phone仿真器内部交换机,Intel ...千兆网络连接虚拟交换机和2个VMware相关交换机。

VMware的存在会导致此问题吗? (我已经停止了(4)VMware相关服务。)

我还可以检查或做什么?

1 个答案:

答案 0 :(得分:0)

经过一整天的工作(不知道任何关于Hyper-V的事情没有帮助)我(我们)解决了这个问题:

在这个特别但非常常见的设置中,以太网和无线网络适配器均已启用,以太网位于无线以上,因为当两者都可用时,可以使电缆连接优先于无线连接。

即使在启动/创建仿真器时以太网电缆已断开连接,Hyper-V也会将以太网创建为外部网络适配器。但由于没有电缆,适配器被物理禁用,无法找到本地WCF服务(在无线网络上运行)。

禁用以太网(硬件)适配器(控制面板),然后删除模拟器,并通过在VS中启动手机应用程序重建它来修复连接问题。在检查时,无线适配器随后被指定为要使用的外部适配器(“虚拟交换机”)。

希望能有所帮助。