【问题标题】:Entity Framework Core DbContext set DbConnection实体框架核心 DbContext 设置 DbConnection
【发布时间】:2018-07-22 18:14:17
【问题描述】:

在 .NET Framework 中是 DbContext,在 EntityFramework 6 中是 constructor,我可以在其中设置 DbConnection。

在 EF .NET Core 中我可以设置 DbContext DbConnection 吗?我在 DbContext 方法的 UseTransaction 中遇到异常:

Microsoft.EntityFrameworkCore.Relational.dll 中出现“System.InvalidOperationException”类型的异常,但未在用户代码中处理:“指定的事务与当前连接不关联。只能使用与当前连接关联的事务。'

有人知道如何设置 DbConnection 吗?还是我走错路了?

【问题讨论】:

标签: c# .net entity-framework-core dbcontext


【解决方案1】:

我一直在 .Net 核心应用程序的启动文件中添加数据库上下文,方法是将其添加到 IServiceCollection 并从 appsetting 文件中提取字符串,如下所示:

        private void AddDatabase(IServiceCollection services)
    {
        var databaseConnectionString = Configuration.GetConnectionString("DatabseConnection");

        Check.CanConnectToDatabase(databaseConnectionString);

        services.AddDbContext<DatabaseContext>(
            options =>
            {
                options.ConfigureWarnings(
                    warnings => warnings.Throw(RelationalEventId.QueryClientEvaluationWarning));
                options.UseSqlServer(databaseConnectionString,
                    sqlOptions => sqlOptions.MigrationsHistoryTable(HistoryRepository.DefaultTableName, "SchemaName"));
            });
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-16
    • 2020-10-15
    • 2016-11-08
    • 2017-10-01
    • 1970-01-01
    • 2021-01-22
    相关资源
    最近更新 更多