.NET6 Minimal API 集成Autofac
前提
集成Autofac前需要先添加两个依赖包
可以通过 NuGet 进行安装,使用以下命令:
dotnet add package Autofac
dotnet add package Autofac.Extensions.DependencyInjection
集成Autofac
在不使用Minimal API之前我们集成 Autofac大概如下:
在Program.cs文件中
public static class Program
{
public static void Main(string[] args)
=> CreateHostBuilder(args).Build().Run();
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.UseServiceProviderFactory(new AutofacServiceProviderFactory()) //变更默认容器
.ConfigureWebHostDefaults(webBuilder <details>
{
webBuilder.UseStartup<Startup>();
});
}
然后再Startup.cs文件中
public class Startup
{
public void ConfigureContainer(ContainerBuilder containerBuilder)
{
// 注册服务关系
}
}
但是在.NET6 中使用了Minimal API方式,对应的Startup.cs文件已经没有了,那么该如何处理呢?
其实同样没有区别
具体如下
var builder = WebApplication.CreateBuilder(args);
builder.Host.UseServiceProviderFactory(new AutofacServiceProviderFactory()); // 变更默认容器
builder.Host.ConfigureContainer<ContainerBuilder>(builder =>
{
// 注册服务关系
});
参考链接
How-To: Minimal IoC solution using AutoFac — C#
Using Autofac in .NET 6 Minimal API’s
ASP.NET Core — Autofac 7.0.0 documentation
.NET6 Minimal API 集成Autofac的更多相关文章
- 简单聊下.NET6 Minimal API的使用方式
前言 随着.Net6的发布,微软也改进了对之前ASP.NET Core构建方式,使用了新的Minimal API模式.之前默认的方式是需要在Startup中注册IOC和中间件相关,但是在Minimal ...
- 【.NET6】gRPC服务端和客户端开发案例,以及minimal API服务、gRPC服务和传统webapi服务的访问效率大对决
前言:随着.Net6的发布,Minimal API成了当下受人追捧的角儿.而这之前,程序之间通信效率的王者也许可以算得上是gRPC了.那么以下咱们先通过开发一个gRPC服务的教程,然后顺势而为,再接着 ...
- .Net Minimal Api 介绍
Minimal API是.Net 6中新增的模板,借助C# 10的一些特性以最少的代码运行一个Web服务.本文脱离VS通过VS Code,完成一个简单的Minimal Api项目的开发. 创建项目 随 ...
- 【.NET 6】使用.NET 6开发minimal api以及依赖注入的实现、VS2022热重载和自动反编译功能的演示
前言: .net 6 LTS版本发布已经有若干天了.此处做一个关于使用.net 6 开发精简版webapi(minimal api)的入门教程,以及VS2022 上面的两个强大的新技能(热重载.代码自 ...
- Net6 Core Api(.net6)发布到IIS注意事项及显示HTTP 错误500.19解决方法
Net6 Core Api发布到IIS不同于webapi,依赖框架不同,配置也移至项目内Program.cs 一.发布到指定文件夹,和IIS,不过注意IIS应用程序池选择的是 "无托管代码& ...
- SimpleInjector与MVC4集成,与Web Api集成,以及通过属性注入演示
SimpleInjector与MVC4集成,与Web Api集成,以及通过属性注入演示 1,与MVC集成 见http://simpleinjector.codeplex.com/wikipage? ...
- .NET手记-为ASP.NET MVC程序集成Autofac
MVC Autofac总是会紧跟最新版本的ASP.NET MVC框架,所以文档也会一直保持更新.一般来讲,不同版本的框架集成Autofac的方法一般不变. MVC集成需要引用 Autofac.Mvc5 ...
- ASP.NET Core 6 Minimal API的模拟实现
Minimal API仅仅是在基于IHost/IHostBuilder的服务承载系统上作了小小的封装而已,它利用WebApplication和WebApplicationBuilder这两个类型提供了 ...
- Spring Data REST API集成Springfox、Swagger
原文: Documenting a Spring Data REST API with Springfox and Swagger 使用Spring Date REST,你可以迅速为Spring Da ...
- integration asp.net web api with autofac and owin
There is an example project showing Web API in conjunction with OWIN self hosting https://github.com ...
随机推荐
- #前缀和优化dp#牛客练习赛71 C 数学考试
题目 求\(1\sim n\)的排列,有\(m\)个限制条件,第\(i\)个限制条件\(p_i\), 表示前\(p_i\)个数不能是\(1\sim p_i\)的排列,求符合要求的排列的个数. 分析 这 ...
- 【分享汇总】AIoT 开源科技节暨 OpenHarmony 技术论坛(附链接)
在开源科技 OSTech 和环球资源联手举办的"AIoT 开源科技节暨 OpenHarmony 技术论坛"上,一众技术大咖.开源鸿蒙生态上下游厂商与开发者群体齐聚一堂,畅谈&quo ...
- CircleIndicator组件,使指示器风格更加多样化
UI界面是应用程序可视化必不可少的部分.设计精致的UI界面可以使得整个可视化应用程序给用户留下深刻的印象,是改善用户界面体验最直接的方式. ArkUI开发框架为开发者提供了丰富的UI原生组件,如Nav ...
- 如何通过OpenHarmony系统中集成的ffmpeg库和NAPI机制,实现更多的多媒体功能?
简介 OpenAtom OpenHarmony(以下简称"OpenHarmony")作为"开源"世界的"连接器",不断为智能社会的发展提供源 ...
- Python 条件和 if 语句
Python支持来自数学的通常逻辑条件: 等于:a == b 不等于:a != b 小于:a < b 小于或等于:a <= b 大于:a > b 大于或等于:a >= b 这些 ...
- MySql-BlackHole:黑洞引擎
通过查看SHOW ENGINES;或SHOW VARIABLES LIKE 'have%';的输出来查看但前的mysql版本是否支持这个引擎. 1 mysql> show engines; 2 ...
- XML文档节点导航与选择指南
XPath(XML Path Language)是XSLT标准的主要组成部分.它用于在XML文档中浏览元素和属性,提供了一种强大的定位和选择节点的方式. XPath的基本特点 代表XML路径语言: X ...
- std::thread 二:互斥量(带超时的互斥量 timed_mutex())
timed_mutex . try_lock_for . try_lock_until #include <iostream> #include <thread> #inclu ...
- vscode 搭建Django开发环境
1.创建一个空目录2.vscode打开目录3.终端运行命令创建虚拟环境: python -m venv .venv4.选择环境:ctrl+shift+p,选择解释器->选择新建的虚拟环境5.进入 ...
- 树模型-LightGBM-从三个层面改进xgb
LightGBM lightGBM总结