CreateIndex API是否支持多列索引?

时间:2019-07-01 18:44:36

标签: servicestack

OrmLite CreateIndex API是否支持多列索引?

看起来它只接受一次列参数:

db.CreateIndex<Table>(x => x.ColumnName);

还可以指定升序/降序还是最后一个为null?

2 个答案:

答案 0 :(得分:0)

不使用CreateIndex API,但是您可以在使用[CompositeIndex]属性创建表时创建复合索引,例如:

[CompositeIndex(nameof(Username), nameof(Region))]
public class Profile
{
    [AutoIncrement]
    public int Id { get; set; }

    public Region Region { get; set; }
    public string Username { get; set; }
}

您可以在每一列上添加ASCDESC以指定升序/降序,例如:

[CompositeIndex("Username ASC", "Region DESC")]
public class Profile
{
    [AutoIncrement]
    public int Id { get; set; }

    public Region Region { get; set; }
    public string Username { get; set; }
}

答案 1 :(得分:0)

是-使用CompositeIndex属性。在类级别应用它,并指定索引的列名。