在ASP.NET Core 1.0项目中,使用DI如何向构造函数传递参数?例如,我该如何在Startup.cs中注册以下服务:
我在这里看到了一个类似的例子,但它的输入参数类型不完全相同。 服务:
services.AddTransient(typeof(IStateService), new StateService());
,因为StateService()需要一个BlogingContext类型的输入参数,所以这样做是行不通的。或者,有没有其他涉及数据库的构建以下服务的方法?这里的State
是来自SQL Server数据库的表。应用程序使用基于Code First方式的EntityFrameworkCore
。我正在使用发布于2016年6月27日的最新版本的ASP.NET Core 1.0和VS2015-Update 3。我在这里看到了一个类似的例子,但它的输入参数类型不完全相同。 服务:
public interface IStateService
{
IEnumerable<State> List();
}
public class StateService : IStateService
{
private BloggingContext _context;
public StateService(BloggingContext context)
{
_context = context;
}
public IEnumerable<State> List()
{
return _context.States.ToList();
}
}
services.AddDbContext<BloggingContext>();
这样的方式注册BloggingContext
吗?详情请见 https://docs.asp.net/en/latest/fundamentals/dependency-injection.html#registering-your-own-services - mollweStateService
。 - nam