2017-07-18 12 views
1

複数のモジュールを取り込み、それらのモジュールをメインプロジェクトに作成できるWebサイトを作成しています。ブートストラップとカスタムビューエンジンをプログラミングして、module.dllでビューを見つけることができるようにします。System.IO.FileNotFoundException:ファイルまたはアセンブリを読み込めませんでした 'System.Web.DataVisualization MEF MVC

テスト用のテストモジュールをコンパイルした後、何らかの理由でSystem.Web.DataVisualizationをロードできないという奇妙なエラーが発生しています。私はまた、モジュールdllのコントローラが正しくロードされることに気付いた、私はデバッグでそれを見ることができますが、このエラーはスレッドを殺し続け、エラーをスローします。

enter image description here

これはのDLL読み込み/作曲を担当Bootstrapper.csため、私が持っているコードです。

using System; 
using System.Collections.Generic; 
using System.ComponentModel.Composition; 
using System.ComponentModel.Composition.Hosting; 
using System.IO; 

public class Bootstrapper 
{ 
    private static CompositionContainer CompositionContainer; 
    private static bool IsLoaded = false; 

    public static void Compose(List<string> pluginFolders) 
    { 
     if (IsLoaded) return; 

     var catalog = new AggregateCatalog(); 

     catalog.Catalogs.Add(new DirectoryCatalog(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "bin"))); 

     foreach (var plugin in pluginFolders) 
     { 
      var directoryCatalog = new DirectoryCatalog(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Modules", plugin)); 
      catalog.Catalogs.Add(directoryCatalog); 

     } 
     CompositionContainer = new CompositionContainer(catalog); 

     CompositionContainer.ComposeParts(); 
     IsLoaded = true; 
    } 

    public static T GetInstance<T>(string contractName = null) 
    { 
     var type = default(T); 
     if (CompositionContainer == null) return type; 

     if (!string.IsNullOrWhiteSpace(contractName)) 
      type = CompositionContainer.GetExportedValue<T>(contractName); 
     else 
      type = CompositionContainer.GetExportedValue<T>(); 

     return type; 
    } 
} 

これはテスト時に破棄されるエラーです。 enter image description here

答えて

0

このための解決策は、残念ながら、手動でdllファイルをダウンロードして参照に追加しますが、メインの編集は、私のようなSystem.Web.DataVisualizationインポートするアセンブリを定義しなければならなかったのWeb.Configにしたことでした。 <add assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

関連する問題