1
创建综合指数
我想创建一个使用CreateIndex()
复合索引就像我可以为单个列索引,例如:与ServiceStack
db.CreateIndex<NetworkPart>(np => np.NetworkId);
是,即使是有可能做到这一点?
我的类看起来是这样的,我想对已经存在的数据库表中创建新增加的综合指数:
[CompositeIndex(true, nameof(NetworkPart1), nameof(NetworkPart2))]
public class NetworkPart
{
[Required]
[Index]
public Guid NetworkId { get; set; }
[Required]
public string NetworkPart1 { get; set; }
[Required]
public string NetworkPart2 { get; set; }
}
我知道,但我加了这个指标已经创建了表之后。现在我需要“迁移”与已更改类相匹配的现有表。目前我这样做:var createIndexStatements = db.GetDialectProvider()。ToCreateIndexStatements(typeof(NetworkPart)); var createIndexStatement = createIndexStatements.FirstOrDefault(stmt => stmt.Contains(“uidx_networkpart_networkpart1_networkpart2”)); db.ExecuteSql(createIndexStatement);' – kabeleced
[FluentMigrator](https://github.com/schambers/fluentmigrator)是这类任务的理想人选。 – labilbe
@labilbe谢谢,但我想实现这一点,而不需要额外的工具。我可以使用ServiceStack的'CreateIndex()'在一列上添加一个索引,就像我想用一个组合索引一样。 – kabeleced