我有一个使用第三方Web服务进行身份验证的.NET应用程序。
我的代码:
var sso = new com.myclient.auth.Service();
string userID = sso.DecryptUser(encryptedUserString, decryptionKey);
这已经有一段时间了。我被迫将应用程序从VS 2008中的.NET 2.0转换为VS 2010中的.NET 3.5,现在它已不再适用。我在" DecryptUser"我收到错误:"从传输流中收到意外的EOF或0字节"。
我在转换过程中看不到对此代码所做的任何更改。我尝试了很多用于强制SecurityProtocolType.Ssl3的错误的解决方案 - 这也不起作用。如果我恢复到VS 2008并构建,页面可以工作 - 没有错误。
答案 0 :(得分:0)
好的 - 我对整个项目进行了完整的文件比较,并在VS转换过程中发现了Properties / Settings.Designer.cs中的这一变化:
public string MyProj_com_myclient_auth_Service {
get {
string urlSetting = System.Configuration.ConfigurationSettings.AppSettings["com.myclient.auth"];
if (urlSetting != null)
{
return urlSetting.ToString();
}
else
{
return ((string)(this["MyProj_com_myclient_auth_Service"]));
}
}
}
......改为:
public string MyProj_com_myclient_auth_Service {
get {
return ((string)(this["MyProj_com_myclient_auth_Service"]));
}
}
我将其更改回来,现在正在新环境中使用。