我正在尝试使用具有多租户配置的 SQL Server 2008 R2 和 Orchard CMS 部署全文搜索解决方案。每个租户都有自己的数据库。我们正在使用自动数据迁移来管理数据库架构更改。我想使用迁移创建一个全文目录和索引。但是我收到以下错误:
CREATE FULLTEXT CATALOG statement cannot be used inside a user transaction.
我确实知道错误的原因,但我无法确定解决方法。我试图使用System.Data.SqlClient.SqlConnection
应用程序内的类打开一个新的数据库连接,并以某种方式将其配置为不创建事务,但这并没有实现任何目标。
是否可以通过 .NET 提供程序创建全文索引/目录,而不是通过 SSMS 直接连接到数据库?
编辑:
我已经尝试使用 SMO 使用此代码:
var server = new Server(new ServerConnection(new SqlConnection(connectionString)));
var database = server.Databases[databaseName];
var fulltextCatalog = new FullTextCatalog(database, fullTextCatalogName);
fulltextCatalog.Create();
结果与相同的异常。