可能是你的数据库权限不够
在webconfig里的连接字符串中换一个权限高的用户密码试试
我用的sa
See the inner exception for details.
InnerException
对象名 'dbo.Order' 无效,
你查一下看看数据库里面有这个数据表?
没有
数据库里没有Order表
没有哦
@wa3ha: 错误说的就是没有啊。没有你就好好想想为啥没有。
@爱编程的大叔: sorry,我真不知道,麻烦你帮我看下呗!
@爱编程的大叔:
public class BreakAwayContext : DbContext { public BreakAwayContext() : base("name=DefaultConnectionString") { } public DbSet<Destination> Destinations { get; set; } public DbSet<Lodging> Lodgings { get; set; } public DbSet<Person> People { get; set; } protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Configurations.Add(new DestinationConfiguration()); modelBuilder.Configurations.Add(new LodgingConfiguration()); modelBuilder.Configurations.Add(new PersonConfiguration()); } } public class PersonConfiguration : EntityTypeConfiguration<Person> { public PersonConfiguration() { this.HasKey(i => i.SocialSecurityNumber); Property(i => i.SocialSecurityNumber).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None); Property(i => i.RowVersion).IsRowVersion(); } } static void InserPerson() { var model = new Person { FirstName = "Rowan", LastName = "Miller", SocialSecurityNumber = 12345678 }; using (var context = new BreakAwayContext()) { context.People.Add(model); context.SaveChanges(); } } static void Main(string[] args) { try { InserPerson(); } catch (Exception ex) { var ss = ex.Message; } Console.ReadKey(); }
@爱编程的大叔: 我把以前的表全删除了,重新运行,又好了,为什么?刚学EF,麻烦点拨下
@爱编程的大叔: 难道说EF CodeFirst只能一次加所有的表,不能说今天加一张表,明天加一张表?
Order 写成 [Order] 试试