0

.NET 4.5 をインストールした後、Workbox にアクセスするすべてのユーザーが例外を受け取るようになりました。

タイプ 'System.Int32' のオブジェクトはタイプ 'System.Web.Security.Cryptography.Purpose' に変換できません。

いくつかの基本的な Google 検索の後、この問題はログイン時に発生していたように見え、6.5 でログイン用に解決されました。Sitecore へのログインに問題はありません。これまでのところ、この問題はワークフロー ボックスでのみ見られます。

.NET 4.5 がインストールされる前は、問題なく .NET 4.0 を実行していました。

.NET 4.5 がインストールされた状態でワークボックスを実行するための回避策を見つけた人はいますか?

注:現在、Sitecore 6.5 Update 5 を使用しています。

完全なスタック トレース:

[ArgumentException: 型 'System.Int32' のオブジェクトを型 'System.Web.Security.Cryptography.Purpose' に変換できません。] System.RuntimeType.TryChangeType(オブジェクト値、バインダー バインダー、CultureInfo カルチャ、ブール値は SpecialCast を必要とします) +185 システム.Reflection.MethodBase.CheckArguments(Object[] パラメーター、バインダー バインダー、BindingFlags invokeAttr、CultureInfo カルチャ、署名 sig) +122 System.Reflection.RuntimeMethodInfo.InvokeArgumentsCheck(Object obj、BindingFlags invokeAttr、バインダー バインダー、Object[] パラメーター、CultureInfo カルチャ) +206 System.Reflection.RuntimeMethodInfo.Invoke(オブジェクト obj、BindingFlags invokeAttr、バインダー バインダー、Object[] パラメーター、CultureInfo カルチャ) +126 Sitecore.SecurityModel.Cryptography.CookieProtectionHelperWrapper.Encode(CookieProtection cookieProtection,Byte[] buf, Int32 count) +175 Sitecore.Shell.Feeds.FeedUrlOptions.ToString() +192 Sitecore.Shell.Applications.Workbox.WorkboxForm.DisplayWorkflow(IWorkflow ワークフロー) +496 Sitecore.Shell.Applications.Workbox.WorkboxForm. OnLoad(EventArgs e) +545

[TargetInvocationException: 呼び出しのターゲットによって例外がスローされました。 ] パラメータ、Object[] 引数) +76 System.Reflection.RuntimeMethodInfo.Invoke(Object obj、BindingFlags invokeAttr、Binder バインダー、Object[] パラメータ、CultureInfo カルチャ) +193 System.Reflection.MethodBase.Invoke(Object obj、Object[ ] パラメーター) +35 Sitecore.Web.UI.Sheer.ClientPage.OnLoad(EventArgs e) +337 System.Web.UI.Control.LoadRecursive() +116 System.Web.UI.Page.ProcessRequestMain(ブール値 includeStagesBeforeAsyncPoint、ブール値 includeStagesAfterAsyncPoint ) +2910

更新: 既に web.config エントリが変更されているため、ログインが正しく機能します。

<setting name=”Login.RememberLastLoggedInUserName” value=”false” />
4

6 に答える 6

2

Mark と Stephen の助けに感謝します。残念ながら、この特定のシナリオではどちらのオプションも適用されませんでした。(ただし、他の誰かがこの問題に遭遇するのを助けるかもしれないので、私は賛成しました)。

さらに掘り下げると、このシナリオで発生したのは、Sitecore 6.5 Update 5 DLL の一部が展開されておらず、代わりにバージョン 6.5 Update 4 にあったことが明らかになりました。

正しい Update 5 DLL を再展開した後 (および以前に行った web.config の変更を維持した後)、サイトは .NET 4.5 で動作し、例外がスローされることなくワークボックスが読み込まれるようになりました。

于 2012-10-26T18:07:23.283 に答える
2

回避策として、web.config でこの設定を変更してください。

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

于 2012-10-26T16:56:26.150 に答える
1

このブログ投稿には、.NET4.5のアンインストールと4.0の再インストールを含む解決策があるようです。

于 2012-10-26T17:12:06.160 に答える
1

6.5 update 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
   };
于 2012-10-27T12:45:31.853 に答える
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. http://kamranicus.com/Blog/Posts/45/sitecore-and-net-framework-45の下部にある Kevin Obee のコメントを読んでください。

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

これを読むと問題が解決し、Sitecore は正常に動作します。

于 2012-11-21T01:13:45.900 に答える
0

これはさておき、ワークボックスを起動したときにのみこの問題が発生しました。このリンクhttp://www.daveleigh.co.uk/sitecore-workbox-object-of-type-system-int32-cannot-be-converted-to-type-system-web-security-cryptography-purpose/は、 sitecore が提供した修正により、問題が解決されました。

于 2017-02-13T12:55:54.470 に答える