不管是ASP.Net Core还是.Net Framwork下的MVC框架,现在我们都可以从外部Dll中加载控制器和视图。其中我们最常用的方法如下:
以下代码放到 Startup类中的ConfigureServices 方法中,同时要求mytestcontrollers.dll放到运行程序的根目录,当然你使用绝对路径也可以。

 public void ConfigureServices(IServiceCollection services)
        {

            services.AddControllersWithViews()
            .ConfigureApplicationPartManager(apm =>
            {
               var assembly = Assembly.Load("mytestcontrollers");
                apm.AddApplicationPart(assembly);

            }).AddControllersAsServices().AddRazorRuntimeCompilation();

        }

以上方法是推荐方法。还有一种更简单的方法,我已经写在这里了:https://lebang2020.cn/details/210611cjry3y5o.html

两个方法都可以,但是要注意不能有相同的controller,不然会起冲突。