小编Nic*_*ick的帖子

代码首先自定义SQL迁移超时异常

我试图通过执行自定义Sql使用Entity Framework Migration创建FULL TEXT索引.

我的迁移类看起来像这样:

public partial class DocumentContentFullTextIndex : DbMigration
{
    public override void Up()
    {
        AlterColumn("dbo.Attachments", "ContentType", c => c.String(maxLength: 260));

        Sql("CREATE FULLTEXT CATALOG FullTextIndexes AS DEFAULT;", true);

        Sql(@"CREATE FULLTEXT INDEX ON [Attachments](
Content
    TYPE COLUMN ContentType
    Language 'ENGLISH'
)
KEY INDEX [PK_dbo.Attachments]
ON FullTextIndexes;", true);
    }

    public override void Down()
    {
        AlterColumn("dbo.Attachments", "ContentType", c => c.String(maxLength: null));

        Sql("DROP FULLTEXT INDEX ON [Attachments]");
        Sql("DROP FULLTEXT CATALOG FullTextIndexes");
    }
}
Run Code Online (Sandbox Code Playgroud)

当我从MSSQL管理工作室运行它时,一切都很完美,SQL完全符合我的预期.

但是当从迁移项目运行时,第二个Sql请求会触发异常

超时已过期.操作完成之前经过的超时时间或服务器没有响应.

带-Verbose标志的完整堆栈跟踪:

Update-Database -ConnectionStringName DatabaseContext -Verbose
Using …
Run Code Online (Sandbox Code Playgroud)

full-text-indexing sql-server-2012 ef-migrations entity-framework-6

22
推荐指数
2
解决办法
8505
查看次数