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());
            
}
相关推荐
luckilyil19 小时前
Spring MVC 与 JSP 数据传输
java·spring·mvc
m0_743048441 天前
Spring MVC练习
java·spring·mvc
V+zmm101342 天前
小说实体书商城微信小程序ssm+论文源码调试讲解
java·小程序·毕业设计·mvc·ssm·课程设计
V+zmm101342 天前
校园服务平台小程序ssm+论文源码调试讲解
java·小程序·毕业设计·mvc·课程设计·1024程序员节
海无极2 天前
EDUCODER头哥 基于MVC模式的用户登录
mvc
组合缺一3 天前
Solon MVC 的 @Mapping 用法说明
java·mvc·solon
小春学渗透3 天前
DAY111PHP开发框架&THIKNPHP&反序列化&POP利用链&RCE执行&文件删除
java·开发语言·安全·php·mvc·代码审计
鹿屿二向箔3 天前
基于SSM(Spring + Spring MVC + MyBatis)框架的快递管理系统
spring·mvc·mybatis
阑梦清川3 天前
JavaEE进阶---SpringMVC(二)请求里面十种参数类型
java·java-ee·mvc·请求类型
像污秽一样3 天前
基于Servlet实现MVC
servlet·mvc