首页 > 后端开发 > C#.Net教程 > 我们如何将服务依赖注入到控制器C# Asp.net Core中?

我们如何将服务依赖注入到控制器C# Asp.net Core中?

WBOY
发布: 2023-09-10 12:49:02
转载
1255 人浏览过

我们如何将服务依赖注入到控制器C# Asp.net Core中?

ASP.NET Core通过构造函数或方法注入依赖类的对象 通过使用内置的 IoC 容器。

内置容器由 IServiceProvider 实现表示 默认支持构造函数注入。由内置 IoC 管理的类型(类) 容器称为服务。

为了让IoC容器自动注入我们的应用服务,我们首先 需要将它们注册到IoC容器。

示例

public interface ILog{
   void info(string str);
}
class MyConsoleLogger : ILog{
   public void info(string str){
      Console.WriteLine(str);
   }
}
登录后复制

ASP.NET Core 允许我们向 IoC 容器注册我们的应用程序服务, 在Startup类的ConfigureServices方法中。配置服务方法 包含一个 IServiceCollection 类型的参数,用于注册应用程序 services

在ConfigureServices()方法中向IoC容器注册ILog,如下所示。

public class Startup{
   public void ConfigureServices(IServiceCollection services){
      services.AddSingleton<ILog, MyConsoleLogger>();
   }
}
登录后复制

IServiceCollection实例的Add()方法用于向IoC注册服务 容器

我们已指定 ILog 作为服务类型,并指定 MyConsoleLogger 作为其实例 这会将 ILog 服务注册为单例 现在,IoC 容器将创建 MyConsoleLogger 类的单例对象,并 无论我们将 ILog 作为构造函数包含在类的构造函数中,还是将其注入到类的构造函数中, 整个应用程序的方法参数。

以上是我们如何将服务依赖注入到控制器C# Asp.net Core中?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板