Windows Phone模拟器不与本地WebAPI 2服务通信

时间:2016-09-04 21:25:07

标签: asp.net-web-api windows-phone-8 visual-studio-2015 windows-phone-8.1 windows-10-mobile

我有一个Windows Phone 8应用程序。它使用一系列WebAPI 2调用来从服务器检索数据。在Visual Studio 2013中,我可以在Visual Studio中运行WebAPI项目,然后通过Visual Studio在模拟器上运行App,一切正常。为此,我必须以管理员身份运行Visual Studio 2013,并且必须在API应用程序条目下的IISExpress applicationhost.config文件中添加一行,如下所示:

<binding protocol="http" bindingInformation="*:56952:192.168.1.59" />

这是App中设置WebAPIs位置的代码行:

public const string APIPrefix =&#34; http://192.168.1.59:56952&#34 ;;

如果我在Windows Phone 8.1或Windows 10 Mobile模拟器上运行应用程序并不重要,只要我在Visual Studio 2013中运行它就连接到我在Visual Studio中运行的WebAPI项目。请注意,192.168.1.59是我运行Visual Studio的开发机器的IP地址。

当我将项目升级到Visual Studio 2015并以完全相同的方式运行所有内容时(以管理员身份运行,项目名称完全相同,因此我不需要对applicationhost.config文件进行更改)对WebAPI的任何调用都会返回&#34; Not Found&#34;消息。

知道我在Visual Studio 2015中缺少什么来使其工作吗?

1 个答案:

答案 0 :(得分:0)

所以我确实找到了解决方法。如果我从:

更改API前缀
APIPrefix = "http://192.168.1.59:56952";

APIPrefix = "http://localhost:56952";

除了Windows 10 Mobile模拟器版本10.0.14393.0之外,它似乎无处不在。我发现在另一个线程上报告了该版本的模拟器的问题

Unable to access local Web API from Visual Studio 2015 WIndows 10 Phone Emulator

希望这有助于其他人。