Я пытаюсь добавить функциональность, подобную плагину, в мое приложение, и мне трудно найти предварительно скомпилированные представления.
Допустим, у меня есть библиотека классов Razor, которая скомпилирована в plugin.dll и plugin.views.dll
Я успешно загружаю и добавляю plugin.dll
Assembly PLUGIN_ASSEMBLY = null;
try
{
PLUGIN_ASSEMBLY = Assembly.LoadFile(PLUGIN.PluginFileName);
Assembly.LoadFile(PLUGIN.PluginViewsFileName);
}
catch (FileLoadException)
{
throw;
}
Затем сборка добавляется с помощью
MVC_BUILDER.AddApplicationPart(PLUGIN_ASSEMBLY);
Затем я добавляю базовый путь к плагину, чтобы были открыты его нормальные виды
MVC_BUILDER.AddRazorOptions(o =>
{
IFileProvider physicalProvider = new PhysicalFileProvider(PLUGIN.BasePath);
IFileProvider compositeProvider = new CompositeFileProvider(physicalProvider);
o.FileProviders.Add(compositeProvider);
});
Все вышеперечисленное работает нормально, за исключением того, что я могу использовать только физически расположенные виды, а не те, что на plugin.views.dll
Каков будет правильный подход к добавлению views.dll и созданию обнаруженных представлений?