EF4 Code First 使表名称为单数

2023-11-27

我正在使用单数表名称的标准。默认情况下,EF4 Code First 具有复数表名称。我已经编写了代码来覆盖此约定,但似乎不起作用。

使用部分:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.Data.Entity;
using System.Data.Entity.Database;
using System.Data.Entity.ModelConfiguration;
using System.Data.Entity.ModelConfiguration.Conventions.Edm;

数据上下文:

public class SiteDataContext : DbContext
    {
        public DbSet<Blog> Blogs { get; set; }
        public DbSet<BlogFeedback> BlogFeedbacks { get; set; }
        public DbSet<BlogCategory> BlogCategories { get; set; }

        // Twist our database
        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            modelBuilder.Conventions.Remove<PluralizingEntitySetNameConvention>();
            base.OnModelCreating(modelBuilder);
        }
    }

创建的表:

  • Blogs
  • 博客反馈
  • 博客类别

因为约定覆盖(以及我需要的)应该是:

  • Blog
  • 博客反馈
  • 博客类别

有人知道为什么覆盖线不起作用吗?多谢。


您使用了错误的约定。您需要执行以下操作。

protected override void OnModelCreating(ModelBuilder modelBuilder)
{    
    modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

EF4 Code First 使表名称为单数 的相关文章

随机推荐