繁体   English   中英

EF 核心 Scaffold-DbContext 不起作用:执行超时已过期

[英]EF core Scaffold-DbContext doesn't work : Execution Timeout Expired

我正在尝试从现有数据库中构建模型。

Scaffold-DbContext "connectionString" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models

但我得到了这个错误:

Microsoft.Data.SqlClient.SqlException (0x80131904):执行超时已过期。 在操作完成之前超时时间已过或服务器没有响应。

  • 安装了所有必需的软件包(尝试了另一个连接字符串并且它正在工作)
  • 已尝试(连接超时 15000 和连接超时 15000)
  • 我可以通过 Sql Server management / VS Server explorer 使用相同的连接字符串进行连接

有任何想法吗?

据我所知,目前没有解决方案。 SQL Server 连接字符串不允许定义命令超时,而只能定义连接超时。 我使用--schema dbo选项解决了这个问题,该选项消除了十几个具有另一个模式的表,现在它可以工作了。 但是持续多久?

我的代码:

dotnet ef dbcontext scaffold "SERVER=.;DATABASE=dbstore0;Integrated Security=SSPI;Connection Timeout=300;TrustServerCertificate=True" Microsoft.EntityFrameworkCore.SqlServer -f -o DbStore\Models --context-dir DbStore\Contexts -c DbStoreContext -p Store.Domain.csproj --no-pluralize --schema dbo

对我来说,它通过将Command Timeout=300添加到连接字符串来与SQL Server 2019 (15) 一起使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM