在ServiceStack OrmLite中删除并重新创建索引

时间:2016-10-17 13:34:17

标签: servicestack ormlite-servicestack

我有一些由ServiceStack.OrmLite创建的MSSQL表,我想以编程方式更改某些列的类型,或者可能删除并重新创建其中一些(使用不同类型)。问题是它们中的一些可能用在索引中(也是由[Index] / [CompositeIndex]属性中的OrmLite创建的)。是否有一种简单的方法可以让OrmLite删除并创建特定列使用的所有索引?

我注意到有IDbConnection.CreateIndex,但这可能不适用于复合索引。还有IDbConnection.DropIndex,但这需要索引的名称,我没有。

1 个答案:

答案 0 :(得分:2)

没有API说"删除/重新创建列的索引",唯一的DDL API OrmLite提供的是OrmLiteSchemaModifyApi类。

您需要使用db.ExecuteSql进行以编程方式执行的任何其他表格修改。