我开始使用UWP并希望使用一个用VB.Net 2.0编写的旧的,使用频繁的ASMX Web服务。
我已经创建了对Web服务的服务引用,但无论我调用什么函数,我总是最终得到错误
“mscorlib.ni.dll中发生了'System.PlatformNotSupportedException'类型的异常但未在用户代码中处理
其他信息:不支持MessageEncoder内容类型解析。“
除此之外没有其他帮助,不确定是否因为返回类型是XML并且它期待JSON或其他东西,即使是这种情况,我认为无处可改变它。
以下是我用来撤回简单回复的相关行,非常感谢帮助。
WSSoapClient proxy = new WSSoapClient();
Guid ProviderGUID = Guid.Parse("[REDACTED]");
string ProviderPassword = "[REDACTED]";
objWSEthnicitiesGetReturn result;
result = await proxy.WSEthnicitiesGetAsync(ProviderGUID, ProviderPassword);
答案 0 :(得分:1)
我发现了这个问题,而W / S正在使用HTTP ...在使用过程中,端点被更改为HTTP。现在,虽然IIS中存在重定向,但这导致查找始终返回301错误。
在服务引用的参考文件中,我必须更改proc GetBindingForEndpoint以包含以下行
result.Security.Transport.ClientCredentialType = System.ServiceModel.HttpClientCredentialType.None;
result.Security.Mode = System.ServiceModel.BasicHttpSecurityMode.Transport;
虽然将引用引入项目.NET,但也改变了对HTTPS到HTTP的所有引用,因此我不得不在整个项目中搜索所有实例并手动更改它们。
现在一切都很好,所以谢谢你们的时间。