2016-03-28 9 views
0

私はAutofacを使用して注入を設定しています。Autofac:設定ファイルに注入を登録し、プロジェクトで参照せずにAssemblyを使用します。

私の意図は、モジュールをプラガブルにすることです。

これはコードを使用するのではなく、設定ファイル(xml、json)を使用することを意味します(私がすでに知っている)。

しかし、Autofacがメイン(Web)プロジェクトファイルで参照せずにアセンブリを参照する可能性はありますか?たとえば、他のdllファイルを変更せずに、新しいモジュールのdllファイル(Webプロジェクトのdllファイルと同じフォルダ内)をコピーしてconfigファイルを変更するだけで、デプロイされたパッケージに新しいモジュールを追加したいとします。

var builder = new ContainerBuilder(); 
var path = "path"; 

var assemblyFiles = Directory.GetFiles(path, "Plugin.*.dll"); 
builder.RegisterAssemblyModules(
    assemblyFiles.Select(
     file => Assembly.LoadFile(Path.Combine(path, file))).ToArray()); 

は、あなたが設定ファイルを希望する場合:

答えて

0

はい、あなたはどちらかだけでは、種類やモジュールを検索するアセンブリをスキャンすることができます(あなたは種類が組み立て自体に登録するどの制御を与えるため、モジュールが優れています) app.config/web.configをdescribed in the documentationとして使用できます。必要に応じて、新しいASP.NET 5 JSONベースの通信でAutofac 4の使用に関するドキュメントを見つけることができます。

関連する問題