如何使用FluentMigrator创建链接服务器?

时间:2016-02-02 06:27:16

标签: transactions linked-server fluent-migrator

我尝试使用FluentMigrator的 Execute.Sql()方法运行常规Sql脚本在我的生产环境中创建链接服务器对象,但是我从MS Sql Server得到以下错误:

The error was The procedure 'sys.sp_addlinkedserver' cannot be  executed within a transaction.  
The procedure 'sys.sp_addlinkedsrvlogin' cannot be executed within a transaction.

有没有办法在FluentMigrator的开放事务之外执行脚本?

非常感谢。

2 个答案:

答案 0 :(得分:1)

我通过使用另一个SqlConnection和SqlCommand执行提到的脚本来解决这个问题,以便在FluentMigrator事务之外运行提到的脚本。
任何其他解决方案都将受到欢迎。

答案 1 :(得分:1)

我也在正常交易之外运行它,通过装饰这样的属性:

[Migration(201604061643, TransactionBehavior.None)]

这是当前版本中的一项新功能,如下所述: https://github.com/schambers/fluentmigrator/wiki/Transaction-modes-for-the-migration-runner