首页 新闻 会员 周边 捐助

最近在看EF Code First的相关,刚开始,遇到一个问题,求帮助

0
悬赏园豆:5 [已关闭问题] 关闭于 2016-04-30 20:51

我希望通过一个Order对象创建表的时候报了个这个错

Message是这个玩意儿:An error occurred while updating the entries. See the inner exception for details.

InnerException是这个玩意儿: "对象名 'dbo.Order' 无效。"

 

我在网上查看了半天没有解决,来个老司机给我指下路。

wa3ha的主页 wa3ha | 初学一级 | 园豆:151
提问于:2016-04-28 23:57
< >
分享
所有回答(6)
0

可能是你的数据库权限不够

在webconfig里的连接字符串中换一个权限高的用户密码试试

刘宏玺 | 园豆:14020 (专家六级) | 2016-04-29 10:58

我用的sa

支持(0) 反对(0) wa3ha | 园豆:151 (初学一级) | 2016-04-29 22:55
0

See the inner exception for details.

InnerException

博学多思 | 园豆:76 (初学一级) | 2016-04-29 13:42
0

对象名 'dbo.Order' 无效,

你查一下看看数据库里面有这个数据表?

爱编程的大叔 | 园豆:30844 (高人七级) | 2016-04-29 15:51

没有

支持(0) 反对(0) wa3ha | 园豆:151 (初学一级) | 2016-04-29 22:55
0

数据库里没有Order表

jio92 | 园豆:1064 (小虾三级) | 2016-04-29 16:24

没有哦

支持(0) 反对(0) wa3ha | 园豆:151 (初学一级) | 2016-04-29 22:55

@wa3ha: 错误说的就是没有啊。没有你就好好想想为啥没有。

支持(0) 反对(0) 爱编程的大叔 | 园豆:30844 (高人七级) | 2016-04-30 09:19

@爱编程的大叔: sorry,我真不知道,麻烦你帮我看下呗!

支持(0) 反对(0) wa3ha | 园豆:151 (初学一级) | 2016-04-30 18:45

@爱编程的大叔: 

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();
        }
支持(0) 反对(0) wa3ha | 园豆:151 (初学一级) | 2016-04-30 18:47

@爱编程的大叔: 我把以前的表全删除了,重新运行,又好了,为什么?刚学EF,麻烦点拨下

支持(0) 反对(0) wa3ha | 园豆:151 (初学一级) | 2016-04-30 18:53

@爱编程的大叔: 难道说EF CodeFirst只能一次加所有的表,不能说今天加一张表,明天加一张表?

支持(0) 反对(0) wa3ha | 园豆:151 (初学一级) | 2016-04-30 18:56
0

Order 写成 [Order] 试试

negidan | 园豆:136 (初学一级) | 2016-04-29 17:01
0
wa3ha | 园豆:151 (初学一级) | 2016-04-30 20:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册