asp.net core mvc 之 依赖注入

一、视图中使用依赖注入

1、core目录下添加 LogHelperService.cs 类

复制代码
    public class LogHelperService
    {
        public void Add()
        {

        }
        public string Read()
        {
            return "日志读取";
        }
    }

2、Startup.cs 文件中 注入依赖注入

3、Views目录中 _ViewImports.cshtml 添加引用

4、视图使用

二、控制器使用依赖注入

1、Startup.cs 文件中 注入依赖注入

2、控制器中使用

cs 复制代码
public class HomeController : BaseController
{

        //通过一个字段来存储
        LogHelperService logHelperService;

        public HomeController(LogHelperService loghelperservice)
        {
            this.logHelperService = loghelperservice;
            logHelperService.Add();
        }
}

三、接口方式接收依赖对象

1、提取接口

cs 复制代码
    public interface ILogHelperService
    {
        void Add();
        string Read();
    }

2、Startup.cs 文件中 注入依赖注入

services.AddTransient<ILogHelperService, LogHelperService>();

3、控制器使用

cs 复制代码
public class HomeController : BaseController
{

        //通过一个字段来存储
        ILogHelperService ilogHelperService;

        public HomeController(ILogHelperService iloghelperservice)
        {
            this.ilogHelperService = iloghelperservice;
            ilogHelperService.Add();
        }
}

四、Action注入依赖对象

1、Startup.cs 文件中 注入依赖注入

2、Action代码

cs 复制代码
//[FromServices] 这个标注 告诉MVC 这个参数不用用户传递过来的get post方式。
//而是依赖容器传递过来的
//还可以接收传递过来的值
public IActionResult Contact([FromServices] ILogHelperService loghelper)
{
    return Content(loghelper.Read());
            
}
相关推荐
William_cl1 天前
C# MVC 修复DataTable时间排序以及中英文系统的时间筛选问题
开发语言·c#·mvc
tuokuac2 天前
MVC的含义
java·mvc
Fency咖啡3 天前
Spring进阶 - SpringMVC实现原理(二)DispatcherServlet处理请求的过程
java·后端·spring·mvc
iナナ4 天前
Spring Web MVC入门
java·前端·网络·后端·spring·mvc
步行cgn5 天前
Java项目包结构设计与功能划分详解
java·开发语言·架构·mvc
C++chaofan6 天前
Redisson分布式限流
java·jvm·spring boot·redis·分布式·mvc·redisson
hello 早上好6 天前
嵌入式 Tomcat 与 Spring MVC 集成
spring·tomcat·mvc
云闲不收6 天前
后端开发基础概念MVC以及Entity,DAO,DO,DTO,VO等概念
mvc
Fency咖啡7 天前
Spring 基础核心 - SpringMVC 入门与请求流程
java·后端·spring·mvc
William_cl9 天前
如何优化 C# MVC 应用程序的性能
开发语言·c#·mvc