【发布时间】:2020-04-30 18:04:39
【问题描述】:
我按照 Microsoft 的指示搭建了一个现有的 AzureSQL 数据库,并且之前成功地访问了数据。这是我使用的命令
"PM> Scaffold-DbContext "Server=tcp:******.database.windows.net,1433;Initial Catalog=******;Persist Security Info=False;User ID=** ****;Password=******;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models>
然而上周我的公司更改了数据库的密码,突然 Db Context 模型停止工作。我已经正确更新了连接字符串,甚至重新搭建了模型,但它仍然无法正常工作。请注意,我尝试使用该连接字符串通过 SqlConnection 进行连接或登录到 SQL Sever Explorer,但它们仍然都成功。数据团队说他们只更改了密码,仅此而已。但是,仅与 EF 核心不再起作用。没有消息错误,但是如果我创建一个对象 DbContext 并看到 99% 的 dbset 是空的。下面是我的调试照片。
以前有没有人遇到过这个问题,可以帮助我解决这个问题。提前致谢。我是新人。
【问题讨论】:
-
嗨,我试图找出问题所在。问题来自我设置
enable 的 csproj 文件。如果我删除它,那么一切都会再次正常工作。我不知道为什么它会影响 DbContext 并使其返回空集,但这就是问题所在。 -
恭喜!您已经通过删除 csroj 文件中的 '
enable ' 来解决问题。 ,我帮你把它作为答案发布,然后 Ohers 就可以知道问题已经解决了。您可以接受(标记)它作为答案。这对其他社区成员可能是有益的。谢谢。
标签: c# azure-sql-database reverse-engineering scaffolding ef-core-3.0