如何从动作过滤器为mongodb asp.net核心设置动态连接字符串

问题描述 投票:0回答:1

我有一个用于数据访问层的父类,该类从sharedappsettings中读取连接字符串。对于每个请求,我想动态设置连接字符串的方法可能是基于标头参数的动作过滤器。怎么做?

mongodb asp.net-core http-headers connection-string action-filter
1个回答
0
投票

对于使用请求标题设置连接字符串,您可以像在IHttpContextAccessor中尝试DbContext一样>>

public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
    private readonly HttpContext httpContext;
    public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options, IHttpContextAccessor httpContextAccessor)
        : base(options)
    {
        httpContext = httpContextAccessor.HttpContext;
    }
    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        var connection = httpContext.Request.Headers["Connectionstring"];
        optionsBuilder.UseSqlServer(connection);
    }       
}
© www.soinside.com 2019 - 2024. All rights reserved.