“无法在 Database First Scaffold-DbContext 上找到 table”
“Unable to find a table” on Database First Scaffold-DbContext
出于某种原因,我遇到了这个错误。以下是规格,然后是我所做的。
Visual Studio 2017 v15.6.2
SQL Server 2008 v10.50.4
我打开包管理器控制台并添加了以下包...
Install-Package Microsoft.EntityFrameworkCore.SqlServer
Install-Package Microsoft.EntityFrameworkCore.Tools
然后我运行
Scaffold-DbContext "Server=ph2srv76;Database=AVDRS;Integrated Security=True;Trusted_Connection=True;" -Provider Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -force
但在构建过程中出现以下错误...
这些只是警告(黄色),而不是错误(红色)- 您可以安全地忽略它们
为了防止其他人遇到这个问题,我通过检查并修复以下内容来解决它:
- 确保您在 scaffold-dbcontext 中使用的用户 ID 实际上对您要构建的表具有权限。否则脚手架找不到它们。
- 确保表具有主键,否则 EF 无法构建它们。想想也有道理。
完成上述步骤后,脚手架对我有用了!
我讨厌 post 显而易见的,但在我的情况下(同样的错误)我针对特定的 table 进行建模(使用 -t 选项)并且没有意识到 table 名称区分大小写。呸!
在我的例子中,我使用了 -table 选项。我这样做时遇到了同样的错误:
-表“报告,REPORT_TYPE,SAVED_REPORT”
正确的方法是这样的:
-表“REPORT”、“REPORT_TYPE”、“SAVED_REPORT”
出于某种原因,我遇到了这个错误。以下是规格,然后是我所做的。
Visual Studio 2017 v15.6.2
SQL Server 2008 v10.50.4
我打开包管理器控制台并添加了以下包...
Install-Package Microsoft.EntityFrameworkCore.SqlServer
Install-Package Microsoft.EntityFrameworkCore.Tools
然后我运行
Scaffold-DbContext "Server=ph2srv76;Database=AVDRS;Integrated Security=True;Trusted_Connection=True;" -Provider Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -force
但在构建过程中出现以下错误...
这些只是警告(黄色),而不是错误(红色)- 您可以安全地忽略它们
为了防止其他人遇到这个问题,我通过检查并修复以下内容来解决它:
- 确保您在 scaffold-dbcontext 中使用的用户 ID 实际上对您要构建的表具有权限。否则脚手架找不到它们。
- 确保表具有主键,否则 EF 无法构建它们。想想也有道理。
完成上述步骤后,脚手架对我有用了!
我讨厌 post 显而易见的,但在我的情况下(同样的错误)我针对特定的 table 进行建模(使用 -t 选项)并且没有意识到 table 名称区分大小写。呸!
在我的例子中,我使用了 -table 选项。我这样做时遇到了同样的错误:
-表“报告,REPORT_TYPE,SAVED_REPORT”
正确的方法是这样的:
-表“REPORT”、“REPORT_TYPE”、“SAVED_REPORT”