Net Core封装 踩坑

 

 

遇到了以下问题:
1.非web应用程序中: 使用[ConfigureWebHostDefaults] 需要引用nuget Microsoft.AspNetCore.Mvc.NewtonsoftJsoftJson包;
 

 

 

 
 
2.Program里面 转移/封装 Startup/转移启动[Host.CreateDefaultBuilder]
必须
 
Host.CreateDefaultBuilder(args)
.ConfigureAppConfiguration((hostcontext, config) => { })
.ConfigureWebHostDefaults(webBuilder =>
{
//webBuilder.UseStartup<Startup>();
webBuilder.ConfigureServices(Startup1.ConfigureServices)
.Configure(Startup1.Configure);
});
}
 
Startup1.Configure 需要在本Web应用程序集中;
如果Startup1.Configure 不在本Web应用程序集中, 需要用委托包一层:
Startup1.Configure 改成 x => Startup1.Configure(x) ;
 
 
需要注意的是 Startup1.Configure 或者 x => Startup1.Configure(x) 这个委托,必须在 当前web应用程序集中传递;底层不能直接封装这个委托的实例化,
否则会出现 swagger 错误 :[No operations defined in spec!]  并且无法处理请求!

 

 

 
 
 
posted @ 2021-05-08 15:24  Bug专员  阅读(487)  评论(0编辑  收藏  举报