asp.net-core - 在 asp net core 中扩展 IServiceCollection
问题描述
我想创建一个类库项目,并在该项目中包含一些实现这些接口的接口和类。
之后,我想提供这个类库项目,作为一个 nuget 包,因此,理想的情况是从 IServiceCollection 进行某种扩展,以便在安装 nuget 后Startup.cs
,ConfigureServices()
在应用程序中的一行代码正在使用 nuget,做这样的事情:
services.AddServicesFromMyNugetPackage()
并且该方法将根据IServiceCollection
我对 DI 的配置执行。
任何想法?
解决方案
在您的库中,您可以创建一个静态类并编写一些扩展方法,您可以在其中注册您的依赖项,如下例所示:
public static class ServicesExtensions
{
public static void AddMyLibraryServices(this IServiceCollection services)
{
// register your services here
}
}
然后在您的启动文件中:
services.AddMyLibraryServices();
推荐阅读
- vim - yaml文件的注释行时vim错误缩进
- mysql - SQL 在所有日期早于 x 的条目中查找最高日期
- gitlab - gitlab MR中过时的差异是什么?
- css - 文本不在 div 中居中
- javascript - 如何从用户使用 gmail api 注册后生成的响应中获取 id_token?
- java - 带有 Java 查询和更新的免费图形数据库
- r - mathjax 在闪亮的应用程序中不起作用
- sql-server - 从 sqlalchemy 中的多列获取最大值
- android - 如何将 Object/Model 类转换为 json 并在改造 2 中发送 json/Application post 请求
- postgresql - SequelizeDatabaseError:列不存在(Postgresql)