gpt4 book ai didi

entity-framework - 运行 Entity Framework 迁移时 SQL 超时

转载 作者:行者123 更新时间:2023-12-01 10:34:15 24 4
gpt4 key购买 nike

我目前在 EF 迁移中运行 SQL() 命令时遇到 SQL 超时。

情况:我正在用一个表替换一堆(> 50)表,并且需要将我即将放入新表的那些表中的数据转换。我按以下方式组织了迁移:

1.创建新表。

  1. 在同一个迁移中,使用 SQL() 函数运行迁移数据的 sql 脚本。

3.删除所有旧表。

目前,迁移出现以下错误:

System.Data.SqlClient.SqlException (0x80131904):超时已过。在操作完成之前超时期限已过,或者服务器没有响应。
该语句已终止。 ---> System.ComponentModel.Win32Exception (0x80004005): 等待操作超时

错误发生在我给他们安装程序的环境中,他们在没有我参与的情况下运行它,所以我不能手动运行单独的迁移,并在中间暂停以运行 SQL 脚本。

有什么方法可以更改连接超时或解决此问题?

环境:

EF 6.0 代码优先

SQL 服务器 2012

最佳答案

查看此 answer .

Use Configuration.cs file to set custom time out:

internal sealed class Configuration :

DbMigrationsConfiguration<ApplicationDbContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = false;
ContextKey = "YourDbContext";

// New timeout in seconds
this.CommandTimeout = 60 * 5;
}
}

使用此方法,您可以仅为迁移更改超时,而不是每个使用默认连接字符串的人。

关于entity-framework - 运行 Entity Framework 迁移时 SQL 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38399687/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com