jjzjj

savechanges

全部标签

c# - Entity Framework - 在事务内检索 'SaveChanges' 之前的 ID

在EntityFramework中-在调用“SaveChanges”之前,是否有任何方法可以在事务中检索新创建的ID(身份)?我需要第二个插入的ID,但它始终返回为0...ObjectContextobjectContext=((IObjectContextAdapter)context).ObjectContext;objectContext.Connection.Open();using(vartransaction=objectContext.Connection.BeginTransaction()){foreach(tblTestentityinsaveItems){this

c# - Entity Framework - 在事务内检索 'SaveChanges' 之前的 ID

在EntityFramework中-在调用“SaveChanges”之前,是否有任何方法可以在事务中检索新创建的ID(身份)?我需要第二个插入的ID,但它始终返回为0...ObjectContextobjectContext=((IObjectContextAdapter)context).ObjectContext;objectContext.Connection.Open();using(vartransaction=objectContext.Connection.BeginTransaction()){foreach(tblTestentityinsaveItems){this

c# - 如何在我的程序中记录从 DbContext.SaveChanges() 生成的 SQL?

这个问题在这里已经有了答案:EntityFrameworkHowtoseeSQLstatementsforSaveChangesmethod(6个答案)关闭4年前。根据this线程,我们可以通过EF记录生成的SQL,但是DbContext.SaveChanges()呢?有什么简单的方法可以在没有任何额外框架的情况下完成这项工作吗?

c# - 有没有可能 DbContext.SaveChanges() 返回 0 但没有异常?

我使用EntityFramework4.0。SaveChanges()是否可能返回0但不抛出异常?例如,添加后。这是我的代码:try{_context.CodeProducts.Add(entity);_context.SaveChanges();//ShellIcontrolreturnresultfromSaveChanges()inhere.//Howeverdoesn'tthrowanexceoption?returnnewMethodResponse(){ResultText="Successful",Type=MethodResponse.ResponseType.Succ

c# - 如何首先使用 EF 代码在 .SaveChanges() 期间记录所有实体更改?

我正在使用EF代码优先。我正在为我的所有存储库使用一个基础存储库,并使用一个注入(inject)存储库的IUnitofWork:publicinterfaceIUnitOfWork:IDisposable{IDbSetSet()whereTEntity:class;intSaveChanges();}publicclassBaseRepositorywhereT:class{protectedreadonlyDbContext_dbContext;protectedreadonlyIDbSet_dbSet;publicBaseRepository(IUnitOfWorkuow){_db

c# - Entity Framework 6 - 如何在调用 SaveChanges 之前查看将为插入生成的 SQL

在EntityFramework6中,是否可以查看将为insertbefore调用SaveChanges执行的SQL?using(vardb=newStuffEntities()){db.Things.Add(newThing({...});//canIgettheSQLinsertstatementatthispoint?db.SaveChanges();}我很熟悉如何在执行之前为查询获取生成的SQL:varquery=db.Thing.Where(x=>x.ID==9);Console.WriteLine(query.ToString());//thisprintstheSQLse

c# - Entity Framework SaveChanges() 与 SaveChangesAsync() 和 Find() 与 FindAsync()

我一直在寻找上面两对之间的区别,但没有找到任何文章清楚地解释它以及何时使用一对。那么SaveChanges()和SaveChangesAsync()有什么区别呢?在Find()和FindAsync()之间?在服务器端,当我们使用Async方法时,我们还需要添加await。因此,我不认为它在服务器端是异步的。它是否仅有助于防止客户端浏览器上的UI阻塞?或者它们之间有什么优缺点? 最佳答案 任何时候您需要在远程服务器上执行操作时,您的程序都会生成请求、发送请求,然后等待响应。我会用SaveChanges()和SaveChangesAsy

c# - 使用事务或 SaveChanges(false) 和 AcceptAllChanges()?

我一直在调查事务,只要我将false传递给SaveChanges()然后调用AcceptAllChanges,它们似乎就会在EF中自行处理()如果没有错误:SaveChanges(false);//...AcceptAllChanges();如果出现问题怎么办?难道我不必回滚,或者只要我的方法超出范围,事务就结束了吗?在交易进行到一半时分配的任何缩进列会怎样?我想如果有人在我的记录变坏之前在我的记录之后添加了一条记录,那么这意味着将缺少Identity值。是否有任何理由在我的代码中使用标准的TransactionScope类? 最佳答案