Entity Framework Core在db.database.begintransaction()scope -e



i创建通用添加方法,在数据库中进行搜索,然后在表上进行更改,因此我将其保存到数据库中。抛出请求超时例外。

   using (Y db = new Y())
        {
            using (var transaction = db.Database.BeginTransaction())
            {
                db.Table.Add(new Table());
                db.SaveChanges();
                public static void add<Y>(Func<T, bool> condition)
                {
                    tableobject = Db.Set<Y>().where(condition).FirstOrDefault();
                    Db.Set<Y>().Add(tableobject);
                    Db.SaveChanges();
                }
                Transaction.Commit();
            }
        }

我对表示真实情况进行了一些更改。我找到了解决方案。这是一种采用参数并创建新实例myDbContext的方法。我称此方法在事务下,如果您使用.NET Core,则无法创建两个DBContext实例。您只能工作一个DBContext。我将我的dbcontext类移交给方法,并解决了问题。

最新更新