現時点では、RazorGenerator.Mvc で遊んでいます。目的は、MVC4 アプリケーション用のモジュラー フレームワークを作成することです。Google で見つけたいくつかのチュートリアルに従っていますが、アプリケーションは正常に動作します。
しかし、私を悩ませ続けている質問があります。したがって、私のソリューションは次のようになります。
-CoreMVCProject
-MVCModuleA
-MVCModuleB
モジュール プロジェクトを管理して、生成されたアセンブリを CoreMVCProject の bin フォルダーにコピーしました。これは今のところ問題なく動作します。
しかし、CoreMVCProject に Plugins フォルダーを作成すると、モジュールからのビューを読み取ることができず、ビューが見つからないというエラーが常に発生します。
ただし、次のように、Plugins フォルダー内にアセンブリを追加するコードも追加しました。
var fullPluginPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Plugins");
foreach (var file in Directory.EnumerateFiles(fullPluginPath, "*.dll"))
PluginAssemblies.Add(Assembly.LoadFile(file));
PluginAssemblies.ForEach(BuildManager.AddReferencedAssembly);
モジュールからのビューはまだ読み取ることができませんが、モジュール内のコントローラーやその他のロジックには問題なくアクセスして実行できます。
要するに、問題は、アセンブリがメインの MVC プロジェクトのビンにコピーされていなくても、ビューを正常に読み取れるように管理する方法です。
なにか提案を ?