2017-12-21 32 views
0

を削除する私は、共分散を持つだけで正常に動作団結登録がありますが、私はそれを削除したら、私はエラーにユニティコンテナ - ResolutionFailedException共分散

「クラス名」を取得:「Microsoft.Practicesを。 \\ \ n Microsoft.Practices.Unity.InterceptionExtension.PolicyInjectionBehaviorを解決しました。(なし) "Unity.ResolutionFailedException"、 "メッセージ": "依存関係の解決に失敗しました。タイプ= \" REDACTED.IChatTranscriptBc 1[REDACTED]\", name = \"REDACTED\".\r\nException occurred while: Calling constructor Microsoft.Practices.Unity.InterceptionExtension.PolicyInjectionBehavior(Microsoft.Practices.Unity.InterceptionExtension.CurrentInterceptionRequest interceptionRequest, Microsoft.Practices.Unity.InterceptionExtension.InjectionPolicy[] policies, Microsoft.Practices.Unity.IUnityContainer container).\r\nException is: ArgumentException - Interface not found.\r\n-----------------------------------------------\r\nAt the time of the exception, the container was:\r\n\r\n Resolving REDACTED.ChatTranscriptBc,REDACTED (mapped from REDACTED.IChatTranscriptBc [ \ r \ nコンストラクターを呼び出すMicrosoft.Practices.Unity.InterceptionExtension.PolicyInjectionBehavior(Microsoft.Practices.Unity.InterceptionExtension.CurrentInterceptionRequest interceptionRequest、Microsoft.Practices.Unity.Interce ptionExtension.InjectionPolicy []ポリシー、Microsoft.Practices.Unity.IUnityContainerコンテナ)\ rを\ n」は

私のインターフェイス、それは動作します:

public interface IChatTranscriptBc<out TTranscript> 
    where TTranscript : Transcript 
それは

public interface IChatTranscriptBc<TTranscript> 
    where TTranscript : Transcript 
を壊し

マイインターフェース

文字通り、唯一の変更は私の "外"の削除です。私はすべてのライブラリを再構築し、コンピュータを再起動しました。共分散の除去が統一を破る理由は何ですか?

答えて

0

私はそれを理解しました。私はIChatTranscriptに解決していましたが、それが一致した具体的なクラスは、その正確な定義と一致しませんでした(Transcript自体ではなく、Transcriptの実装を使用していました)。バブルアップ、それはそのエラーを投げた。