纳闷的EF异常:在提供程序连接上启动事务时出错

问题描述

代码很简单,遍历,修改,保存foreach(SportTeamstindbContext.SportTeams){st.HomeCity="123";dbContext.SaveChanges();}

但执行到dbContext.SaveChanges();的时候会报异常:在提供程序连接上启动事务时出错。有关详细信息,请参阅内部异常求大神指点,谢谢

解决方案

解决方案二:
dbContext.SaveChanges();过后,dbcontext会发生改变,是不能继续遍历的
解决方案三:
那要怎么处理呢,比较好的方式
解决方案四:
叫你看内部异常,那你好歹看一下呢?把savechanges这句移到循环之外
解决方案五:
dbContext.SaveChanges();挪到foreach外面。另外看下innerException
解决方案六:
SaveChanges移到循环之外是一种办法,但应用需要及时更新foreach(SportTeamstindbContext.SportTeams)//遍历{doSomething(st);//执行一些耗时操作dbContext.SaveChanges();//即时保存到数据}publicvoiddoSomething(SportTeamsportTeam){//执行一些耗时操作}

解决方案七:
这是后来想到的一个折中的处理办法,即把IDselect出来,然后通过dbContext.SportTems.Find来得到对象实体,这样就可以SaveChanges了,不过这种作法会对性能什么的照成影响吗,或者有什么更好的处理办法吗List<int>lstID=(fromstindbContext.SportTeamsselectst.ID).ToList();foreach(intsportTeamIDinlstID)//遍历{doSomething(dbContext.SportTeams.Find(sportTeamID));//执行一些耗时操作dbContext.SaveChanges();}

解决方案八:
直接写在外面就好了吧你眨下眼睛就都跑完了,较这真我觉得没必要

时间: 2024-09-28 22:27:45

纳闷的EF异常:在提供程序连接上启动事务时出错的相关文章

新建java项目异常-在eclipse新建java项目时出错,怎么解决

问题描述 在eclipse新建java项目时出错,怎么解决 解决方案 因为新project引用jar包的路径你本地找不到所以出错,至于怎么解决,最好的办法就是新project上右键选择最后一项(Properties),然后选择java build path 点击进入,然后在右边的窗口上选择Libraries,找到有黄色感叹号的jar包,把它删掉然后重新加载下你所删掉jar包的本地路径就OK了,还有一种方法就是新project不用使用user library的功能,直接把所要使用的jar包拷贝到工

SQL Server .NET Framework 数据提供程序连接池

server|程序|数据 有朋友建议我控制连接池的连接,说是为了提高性能,但看了下面的这个文章,感觉连接池是由系统自身进行维护的,程序没有必要去进行控制的.大家有什么意见吗?在连接问题上,是否有提高性能的方法? SQL Server .NET Framework 数据提供程序连接池池连接可以显著提高应用程序的性能和可缩放性.SQL Server .NET Framework 数据提供程序自动为 ADO.NET 客户端应用程序提供连接池.您也可以提供几个连接字符串修饰符来控制连接池行为,请参见本主

https请求在RK3188上通不过,报异常,魅族mx4pro上已通过,并返回正常数据

问题描述 https请求在RK3188上通不过,报异常,魅族mx4pro上已通过,并返回正常数据 完整异常如下:java.security.cert.CertificateException: org.apache.harmony.security.asn1.ASN1Exception: ASN.1 UTCTime: wrong format for DER identifier at [114] at org.apache.harmony.security.provider.cert.X509

tomcat启动SVN 下载的项目出现了异常2(只能上传一张,所以问了两次)

问题描述 tomcat启动SVN 下载的项目出现了异常2(只能上传一张,所以问了两次) 解决方案 错误不是有提示么?里面应该有什么东西配置错了 解决方案二: 你查看一下你的配置文件的url吧 解决方案三: 这不是找不到路径吗,,看下路径就行了 解决方案四: SysConfigAdminUtil类里有个地方会去读admin.properties,会在前面拼一个WebRoot的路径 问题原因就是没有找到WebRoot的路径,可以用类似的方法获取路径 String pathStr = this.get

javase-SVN异常,想从云端上下载项目,但是无法下载,求原因

问题描述 SVN异常,想从云端上下载项目,但是无法下载,求原因 svn: E175002: java.lang.RuntimeException: Could not generate DH keypair svn: E175002: OPTIONS request failed on '/svn/svn/znyy' svn: E175002: java.lang.RuntimeException: Could not generate DH keypair svn: E175002: OPTI

pl sql-用pl/sql连接oracle出现异常,刚刚装上oracle,没有数据库

问题描述 用pl/sql连接oracle出现异常,刚刚装上oracle,没有数据库 解决方案 在oracle工具net manager里面配置的数据库链接对不对,里面可以测试的. 测试通过后,打开plsql会自动加载数据库. 解决方案二: 数据库的连接字符串估计有问题,所以连接不上,出错了 解决方案三: PL/SQL的监听没有设置对吧 解决方案四: PL/SQL连接oracle数据库oracle配置数据库连接[PL/SQL]

上传文件-SpringMVC在文件上传时出现错误

问题描述 SpringMVC在文件上传时出现错误 在使用SpringMVC上传文件时,有事出现一下异常 二月 01 2016 10:04:41 上午 org.apache.catalina.core.StandardWrapperValve invoke严重: Servlet.service() for servlet [JeeCmsAdmin] in context with path [] threw exception [Request processing failed; nested

springmvc-用springMVC框架做文件上传时遇到问题

问题描述 用springMVC框架做文件上传时遇到问题 我是基于red5服务器.来用springMVC框架做文件上传.在上传文件时遇到错误. @RequestMapping(value = "/upload.do",method = RequestMethod.POST) public String upload(HttpServletRequest request, HttpServletResponse response, String string) { System.out.p

请问下大家有没遇到EF调用GetValidationErrors时出错

问题描述 请问下大家有没遇到EF调用GetValidationErrors时出错,我知道报错是说未将对象设置为引用对象,但我不明白为什么调用GetValidationErrors时里面报错.错误代码如下:errormessage:Objectreferencenotsettoaninstanceofanobject.,theUniqueReferencevalueis:1334241M01.Wewillmovethisfile.]System.NullReferenceException:Obj