无论何时尝试构建,我都会收到此错误。我刚安装了Visual Studio 2012和.NET 4.5,但这个项目仍然是在2010年无法将类型为'System.Int32'的对象转换为类型'System.Web.Security.Cryptography.Purpose'
这里是我有问题的代码行:
private static MethodInfo _encode;
public static string Encode(CookieProtection cookieProtection, byte[] buf, int count)
{
return (string)_encode.Invoke(null, new object[] { cookieProtection, buf, count });
}
我收到ArgumentException was unhandled by user code
错误说,"Object of type 'System.Int32' cannot be converted to type 'System.Web.Security.Cryptography.Purpose'"
我的开发环境没有任何改变,我的同事也没有同样的问题,但他们也没有VS2012。
我发现an article有关Sitecore有这个错误,但这是我见过它弹出的唯一的地方。
在那里,他们说,“这是因为在.NET 4.5中存在的System.Web一些新的命名空间”
他们的解决方案是:
- 卸载VS11如果您有它安装
- 卸载.NET 4.5
- 重新安装.NET 4
这似乎是一个荒谬溶液吨帽子4.5和4不能放在同一台机器上。
有没有人知道什么可能导致这个和任何更好的解决方案之前我尝试卸载并重新安装一堆东西?
评论还说,尝试:</setting name="login.rememberlastloggedinusername" value="false" >
但我不想这样做。
很难真正知道你所提供的是怎么回事。即你没有发布实际使用类型Purpose的东西。你试图调用什么方法? – 2012-08-06 15:56:25
对不起,我已经添加了我在这里打电话的地方。这是足够的信息吗? – JCisar 2012-08-06 16:12:00
我没有看到您的编辑与您最初发布的代码有关,并表示存在“问题”。你正在使用什么'HttpSecureCookie'类? – 2012-08-06 16:15:58