You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过依赖注入配置Devart LinqConnect数据库上下文

在Startup.cs中为Devart数据库上下文配置依赖注入并指定连接字符串

我有一个存储后端API所有业务逻辑的类库项目,其中包含Devart提供的Database Context。想知道如何在Startup.cs中设置Transient服务,让C#通过依赖注入初始化数据库时指定连接字符串。以下是我已经查看和尝试过的内容:

已知的普通DbContext配置方式(Devart不支持)

普通DbContext可以通过以下方式注入并指定连接字符串:

_ = services.AddDbContext<DbContext>(options => options.UseSqlServer(connString));

但Devart的数据上下文没有这类配置选项,无法直接套用。

尝试创建分部类

我尝试过创建一个分部类继承自Devart的上下文:

public partial class CustomDbContext : Library.DevartDbContext
{
    public CustomDbContext() : base(dbConnectionString) { }
}

但这只是重写了默认构造函数,只有在类库中使用CustomDbContext时才生效,而我并没有采用这种方式。

当前的注入方式

目前我是直接注入Devart上下文,但依赖类库自身提供连接字符串:

_ = services.AddTransient<Library.DevartDbContext>();

关于Ninject的疑问

我之前没使用过Ninject,它是否能很好地解决这个问题?

尝试直接实例化注入(失败)

我试过以下代码,虽然可以编译:

_ = services.AddTransient(x => new Library.DevartDbContext(dbConnectionString));

但Devart不允许这种做法,我收到了连接字符串错误提示:Key is not valid: license key,现在又回到了原点。

内容的提问来源于stack exchange,提问作者austin_wilcox21

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 17:27:26