2012-10-26 26 views
0

安裝.NET 4.5後,訪問該針線任何用戶現在收到異常:Sitecore的針線拋出異常Cryptography.Purpose與.NET 4.5安裝

類型「System.Int32」的對象不能被轉換爲類型'System.Web.Security.Cryptography.Purpose'。

經過一些基本的谷歌搜索之後,看起來好像這個問題曾經發生在登錄上,並且在登錄時被解析爲6.5。我沒有登錄到Sitecore的問題。到目前爲止,我只在工作流程框中看到這個問題。

在.NET 4.5安裝之前,我們在.NET 4.0上運行時沒有任何問題。

有沒有人找到解決方案來安裝.NET 4.5運行的工作箱?

注:我目前使用Sitecore的6.5更新5

完整堆棧跟蹤:

[ArgumentException的:類型 'System.Int32' 的對象不能轉換爲類型' System.Web.Security.Cryptography.Purpose'。] System.RuntimeType.TryChangeType(Object value,Binder binder,CultureInfo culture,Boolean needsSpecialCast)+185 System.Reflection.MethodBase.CheckArguments(Object [] parameters,Binder binder,結合蛋白System.Reflection.RuntimeMethodInfo.InvokeArgumentsCheck(Object obj,BindingFlags invokeAttr,Binder binder,Object []參數,CultureInfo culture)+206 System.Reflection.RuntimeMethodInfo.Invoke(Object obj ,的BindingFlags invokeAttr,粘結劑粘結劑,對象[]參數,CultureInfo的培養物)126 Sitecore.SecurityModel.Cryptography.CookieProtectionHelperWrapper.Encode(cookieProtection cookieProtection,字節[] buf中,的Int32計數)175個 Sitecore.Shell.Feeds.FeedUrlOptions。的ToString()192 Sitecore.Shell.Applications.Workbox.WorkboxForm.DisplayWorkflow(IWorkflow工作流程)496 Sitecore.Shell.Applications.Workbox.WorkboxForm.OnLoad(EventArgs的)545

System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object target,Object [] arguments,Signature sig,Boolean構造函數)+0 System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object System.Reflection.RuntimeMethodInfo.Invoke(Object obj,BindingFlags invokeAttr,Binder binder,Object []參數,CultureInfo culture)+193 System.Reflection.MethodBase.Invoke(Object obj,Object [] parameters,Object [] arguments)+76 System.Reflection.MethodBase.Invoke (Object obj,Object [] parameters)+35 System.Web.UI。System.Web.UI.Web.UI.Sheer.ClientPage.OnLoad(EventArgs e)+337 System.Web.UI.Control.LoadRecursive()+116 System.Web.UI。 Page.ProcessRequestMain(布爾includeStagesBeforeAsyncPoint,布爾includeSta gesAfterAsyncPoint)2910

UPDATE: 我們已經有web.config中的條目改變,這就是爲什麼登錄正常工作:

<setting name=」Login.RememberLastLoggedInUserName」 value=」false」 /> 

回答

2

由於雙方馬克和斯蒂芬他們的幫助,可惜的是在這個特定的應用既不選項場景。 (然而,我贊成,因爲他們可能會幫助別人遇到這個問題)。

隨着一些進一步的挖掘,似乎有什麼在這種情況下發生的情況是,一些Sitecore的6.5更新的5個DLL文件尚未部署,並且是而不是在6.5版更新4

重新部署後正確更新5個DLL(並保持我們之前的web.config更改)該站點現在在.NET 4.5上運行,並且現在加載工作站時不會引發任何異常。

2

由於周圍的工作只是在你的網頁更改此設置。配置..

<setting name=」Login.RememberLastLoggedInUserName」 value=」false」 />

+0

是的,我應該提到我們已經做到了。 –

1

blog post似乎有一個解決方案,其中包括卸載.NET 4.5和重新安裝4.0

1

如果您正在運行早期版本比6.5更新5,你需要重寫箱裏方法:

DisplayStates 
DisplayWorkflow 

,並設置因子選項,如下所示:

var feedUrlOptions = new FeedUrlOptions("/sitecore/shell/~/feed/workflowstate.aspx") 
    { 
     // HACK: This is to make workbox work on machines with .NET 4.5 installed 
     UseUrlAuthentication = false 
    }; 
+0

對不起,但你對此做了什麼?....並且你是否離開基地召集?你能不能粘貼更多的代碼來展示它的使用方式?謝謝。 –

0

我知道這已經解決但是當我遇到這個錯誤並以不同的方式解決時,思想仍然會起作用。

請查看以下鏈接:

  1. http://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2012/09/Object-of-type-System-Int32-cannot-be-converted-to-type-System-Web-Security-Cryptography-Purpose.aspx

  2. 閱讀凱文Obee有評論在http://kamranicus.com/Blog/Posts/45/sitecore-and-net-framework-45

  3. http://truncatedcodr.wordpress.com/2012/06/20/fix-sitecore-and-net-framework-4-5/

閱讀T上的底他解決了我的問題,Sitecore正常工作。

0

除此之外,我僅在啓動工作箱時遇到此問題。這個鏈接http://www.daveleigh.co.uk/sitecore-workbox-object-of-type-system-int32-cannot-be-converted-to-type-system-web-security-cryptography-purpose/提供了一個sitecore提供的修復,解決了我的問題。

+0

你能在這裏發佈相關的修復細節嗎?在鏈接將來死亡的情況下? –

+0

那麼這傢伙的自己的網站是作爲禮節託管的修復程序,所以如果鏈接死了,修復程序也是如此。 – Flapper

+0

非常真實!感謝您的檢查 –