mvc 连接数据库但单复值得问题

1.  The model backing the ‘MusicStoreDBContext‘ context has changed since the database was created. 

Consider using Code First Migrations to update the database

bubuko.com,布布扣

 

 

Movie这个表是用来记录Model的版本号的,你每次重新生成一次数据库它就会重新给ModelHash列赋一个新值。
和原始数据库就会产生差异.

2. 自动将数据库的表名变复数,导致错误

 bubuko.com,布布扣

方法一:使用TableAttribute为实体类指定映射的表名

1 [Table("User")]
2 public class User
3 {
4     [Key]
5     public int Id { get; set; }
6     public string Usn { get; set; }
7     public string Pwd { get; set; }
8     public DateTime Created { get; set; }
9 }

方法二:重写OnModelCreating方法不允许将表名变为复数形式

public class UserContext : DbContext
{
    public UserContext()
        : base("Name=SQLServer")
    { }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Conventions.Remove<System.Data.Entity.ModelConfiguration.Conventions.PluralizingTableNameConvention>();
    }

    public DbSet<User> User { get; set; }
}


重要::Movie这个表是用来记录Model的版本号的,你每次重新生成一次数据库它就会重新给ModelHash列赋一个新值。
和原始数据库就会产生差异.

解决方法 : 
   Global.asax  里添加  Database.SetInitializer<_001.Models.MovieDBContext>(null);

  protected void Application_Start()
        {
            Database.SetInitializer<_001.Models.MovieDBContext>(null);
posted @ 2017-03-07 14:51  就是个农民  阅读(199)  评论(0编辑  收藏  举报