我正在尝试使用 SQL Server 2008 R2 和具有 Multi-Tenancy 配置的 Orchard CMS 部署全文搜索解决方案。每个租户都有自己的数据库。我们正在使用自动数据迁移来管理数据库架构更改。我想使用迁移创建全文目录和索引。但是我收到以下错误:
CREATE FULLTEXT CATALOG 语句不能在用户事务内使用。
我确实知道错误的原因,但无法确定解决方法。我试图使用应用程序内的 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();
它会产生相同的异常。
最佳答案
用户必须对数据库具有 CREATE FULLTEXT CATALOG 权限,或者是 db_owner 或 db_ddladmin 固定数据库角色的成员。
关于asp.net-mvc - 如何从 .NET 应用程序创建全文搜索索引或目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14266350/