我正在将SQLite与EFCore结合使用,但遇到了问题...如何禁用“复数”等约定?是否可以?

我的ModelBuilder没有属性约定...

protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
             modelBuilder. [NOT HAS PROPERTY CONVENTION]
        }

最佳答案

您可以禁用复数命名约定,如下所示。

public static class ModelBuilderExtensions
{
    public static ModelBuilder RemovePluralizingTableNameConvention(this ModelBuilder modelBuilder)
    {
        foreach (IMutableEntityType entityType in modelBuilder.Model.GetEntityTypes())
        {
            if (entityType.ClrType == null)
                continue;

            entityType.Relational().TableName = entityType.ClrType.Name;
        }

        return modelBuilder;
    }
}

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.RemovePluralizingTableNameConvention();
}

10-06 06:35