使用Fluent API指定索引填充因子?

时间:2016-03-17 18:25:06

标签: c# sql-server entity-framework-core ef-fluent-api

我正在使用Entity Framework 7(.NET Core 1)RC1。我想在迁移中创建一些索引。这部分很容易,但我找不到任何如何为索引指定填充因子的例子。

Context类似于:

modelBuilder.Entity<SomeObject>( entity =>
{
    entity.HasIndex( e => e.SomeProperty ).HasName(" IX_SomeObject_SomeProperty" );
}

迁移看起来像这样:

migrationBuilder.CreateIndex(
    name: "IX_SomeObject_SomeProperty",
    schema: "dbo",
    table: "SomeObject",
    column: "SomeProperty" );

Fluent不支持这个吗?我是否必须在迁移中手动创建索引?

2 个答案:

答案 0 :(得分:1)

它将很快在EF Core 5.0中得到支持。

modelBuilder
    .Entity<Customer>()
    .HasIndex(e => e.Name)
    .HasFillFactor(90);

参考:https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor

答案 1 :(得分:0)

EF Core RC1不支持填充因子。您可以使用migrationBuilder.Sql手动编写create index语句。