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(); }}
登录后复制
IServiceCollection实例的Add()方法用于向IoC注册服务容器
我们已指定 ILog 作为服务类型,并指定 MyConsoleLogger 作为其实例这会将 ILog 服务注册为单例现在,IoC 容器将创建 MyConsoleLogger 类的单例对象,并无论我们将 ILog 作为构造函数包含在类的构造函数中,还是将其注入到类的构造函数中,整个应用程序的方法参数。
以上就是我们如何将服务依赖注入到控制器C# Asp.net Core中?的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2429782.html