我正在尝试测试 Microsoft Azure 的移动服务。我已在 Azure 门户上创建了移动服务,并使用 Todo 演示应用程序下载了“入门”项目。 我能够在云上部署服务并使用模拟器运行应用程序,但是当我尝试在本地 IIS 上托管服务并运行移动应用程序时,我在客户端出现以下异常:
System.ArgumentException: 'us-ascii' is not a supported encoding name.
Parameter name: name
at System.Globalization.EncodingTable.internalGetCodePageFromName(String name)
at System.Globalization.EncodingTable.GetCodePageFromName(String name)
at System.Text.Encoding.GetEncoding(String name)
at System.Net.Http.HttpContent.<>c__DisplayClass1.<ReadAsStringAsync>b__0(Task task)
我的 Windows 语言是英语,键盘语言是法语。我尝试在客户端和服务端配置 HTTP 请求的编码,但没有任何效果。
任何帮助将不胜感激:)
谢谢。
最佳答案
这是现在允许 WP8.X 模拟器 (VM) 连接到在 IIS 下运行的本地服务的副作用。
在 Visual Studio 中创建 WCF Web 服务时,默认情况下该服务托管在 IIS Express 中,并且仅接受本地主机上的连接
但是,Windows Phone 8 模拟器将自身配置为网络上的独立设备。因此,在 Windows Phone 8 模拟器上运行的应用程序无法作为本地主机连接到开发计算机。
在成功从模拟器连接到本地 Web 服务之前,您必须遵循 these steps
简而言之:
- 转至%USERPROFILE%\Documents\IISExpress\config\
- 打开 applicationhost.config
- 添加与 WPEmulator 虚拟机 IP 的新绑定(bind)
- 以管理员身份重新启动 VS
关于azure - “us-ascii”不是 Windows Phone 8/Azure 上支持的编码名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23317455/