В документах ASP.NET Core есть страница с названием Совместное использование контроллеров, представлений, страниц Razor и других компонентов приложения в ASP.NET Core . У них есть следующий фрагмент кода:
public void ConfigureServices(IServiceCollection services)
{
// Requires using System.Reflection;
// Requires using Microsoft.AspNetCore.Mvc.ApplicationParts;
var assembly = typeof(MySharedController).GetTypeInfo().Assembly;
var part = new AssemblyPart(assembly);
services.AddMvc()
.ConfigureApplicationPartManager(apm => apm.ApplicationParts.Add(part))
.SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
}
Прошло много лет с тех пор, как я использовал .NET Framework версию ASP.NET MVC и больше не помню, как это сделать. В течение двух минут я не мог найти ответ, который искал. Должен быть API, в котором вы сообщаете MVC, какие дополнительные сборки нужно искать для контроллеров MVC. Но я нашел эту запись в блоге , которая может помочь. Конечно, через несколько секунд после того, как я опубликовал этот ответ, я обнаружил запись в блоге с информацией, которую я искал, непосредственно под ссылкой на другую запись в блоге, которую ясвязаны между собой. В любом случае, в этом блоге показано, как это сделать, хотя я вообще не рекомендую использовать Assembly.Load
. Вместо этого используйте typeof(MyController).Assembly
.