最近クライアント向けに再設計した古い ASPDotNetStoreFront プロジェクトで非常に奇妙な問題が発生しています。再設計はうまくいきましたが、プロジェクトへの唯一のアドオンである税計算用の社内作成プラグインが機能しなくなりました。プラグインに変更は加えられておらず、再設計まで機能していたことを確認できます。サイトへのすべての変更は、本質的に表面的なものでした。ASPDotNetStoreFront は、この PDFに詳述されているアドオン用の ERP プロバイダーを使用します。私はこのプロジェクトを通じてのみプロバイダーに精通しており、他の場所での経験はほとんどありません。
奇妙な部分は、ASPDotNetStoreFront が AddOn の存在を認識していて、そのコントラクトを呼び出そうとすると失敗することです。(この場合、ITaxRates を使用しており、ITaxRatesContract を呼び出そうとしています。)これは、アクティブ化しようとするたびに発生し、次のエラーが表示されます。
Page URL:/shoppingcart.aspx
Source:Anonymously Hosted DynamicMethods Assembly
Message:Unable to cast transparent proxy to type 'AspDotNetStorefront.Contracts.ITaxRatesContract'.
Stack Trace:
at ITaxRatesContractToViewHostAdapter_ConstructorInvoker(Object )
at System.AddIn.Hosting.AddInActivator.AdaptToHost[T](AddInToken pipeline, IContract addInContract)
at System.AddIn.Hosting.AddInActivator.ActivateInAppDomain[T](AddInToken pipeline, AppDomain domain, AddInControllerImpl controller, Boolean weOwn)
at System.AddIn.Hosting.AddInActivator.Activate[T](AddInToken token, PermissionSet permissionSet, String appDomainName)
at System.AddIn.Hosting.AddInActivator.Activate[T](AddInToken token, AddInSecurityLevel level, String appDomainName)
at System.AddIn.Hosting.AddInActivator.Activate[T](AddInToken token, AddInSecurityLevel level)
at System.AddIn.Hosting.AddInToken.Activate[T](AddInSecurityLevel trustLevel)
at AspDotNetStorefrontCore.AppLogic.UseAddIn[T](Action`1 usageContext) in C:\Users\Username\Documents\Visual Studio 2010\Projects\ASPDNSF\ASPDNSFCore\AppLogic.cs:line 11189
アドオンを見つけ、それをコアの AppLogic クラスにトークンとして追加し、ITaxRatesViewToContractAddInAdapter の変数を Tax Add On に設定してから、上記のエラーを引き起こします。
このプロジェクトで起こったいくつかの注意事項:
これは SVN サーバーから新しいラップトップにプルされたので、このプロジェクトがこのコンピューターで構築されたのはこれが初めてです。それが実際に違いを生むかどうかはわかりませんが、現時点では、何でも喜んで受け入れます。
プロジェクトと、アドインが同じ結果に使用するパイプラインをクリーンアップしようとしました。運がない。
私は最後の日のために頭を悩ませてきました。それは私の最後の神経質になっています. どんな助けでもスーパーメガウルトラに感謝します。ありがとう!