在我的program.cs文件中,我将DB服务设置为
builder.Services.AddDbContext<ADbContext>(options =>
{
options.UseSqlServer(builder.Configuration.GetConnectionString("ADevDB"));
});
在databaseconetext类下面我有
public class ADbContext : DbContext
{
public ADbContext(DbContextOptions<ADbContext> options) : base(options)
{
}
}
我试图在没有构造函数注入的自定义过滤器类中访问EFCore。这是因为当我在一个动作上应用[CustomFilter]
时,我不希望它请求一个参数需要传递给DBConetext的customFilter构造函数
var connectionstring = "Connection string";
var optionsBuilder = new DbContextOptionsBuilder<ApplicationDbContext>();
optionsBuilder.UseSqlServer(connectionstring);
ApplicationDbContext dbContext = new ApplicationDbContext(optionsBuilder.Options);
// Or you can also instantiate inside using
using(ApplicationDbContext dbContext = new ApplicationDbContext(optionsBuilder.Options))
{
//...do stuff
}
查看这个问题的各种答案