关于使用EF6.0框架报错The underlying provider failed on Open.

关于使用EF6.0框架报错The underlying provider failed on Open.,第1张

这有很多种可能

1.确定连接字符串正确的话,再检查下WebConfig中EF版本与项目实际引用的是不是一致

<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />

2.试一试你写的sa和password能不能成功登录到数据库

问题在于你的

oldinstance = instance这句上。

EF的跟踪机制比想像的要复杂,oldinstance由于是dacEntities返回(查询到)的,是被打上跟踪标记的,你直接让oldinstance指向另的对象,那么oldinstance就“失去控制”了,你应该直接在oldinstance上进行你的更改 *** 作,然后savechanges,不用设置oldinstance的state,因为当你修改oldinstance的属性时,跟踪机制会自动知道你改变了oldinstance的属性,将它的状态设为modified。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9931174.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存