Entity Framework使用建模之Model First B

通过上面的属性我们不难说明,Publisher对象持有一个Book对象的集合,Book对象持有一个Publisher对象,

l        到目前为止两个对象有关系但无约束,现在添加两个对象的引用约束

n        选择两个对象中间的关联线,选择属性面板中的“引用约束”


设置引用约束如下:


这个约束和关系数据库的表外键约束基本一致的,它的意思是Book对象的PublisherID属性依赖Publisher对象的主键PublisherID,Book是依赖对象,Publisher是被依赖对象。

采用上面的步骤我们创建一个多对多的模型“书籍对作者”,也就说,一个书籍属于多个作者,一个作者可以拥有多本书,那么书籍对象应该拥有一个作者对象的集合,作者对象拥有一个书籍对象的集合,如下图:


三、根据模型生成数据库

a)        在设计视图上右击选择“根据模型生成数据库”,会为图上的所哟模型生成数据库脚本,文件名称:“模型文件名.edmx.sql”您需要单独执行该sql以生成对应的数据表


四、程序示范

static void Demo3()
        {
            using (ModelFirstContainer cxt = new ModelFirstContainer())
            {
               cxt.Publishers.AddObject(new Publisher { PublisherName = "电子工业出版社" });
               cxt.Publishers.AddObject(new Publisher { PublisherName = "人民大学出版社" });
               cxt.Publishers.AddObject(new Publisher { PublisherName = "四川大学出版社" });
               cxt.SaveChanges();
               cxt.Publishers.AsEnumerable()
                   .Select(item =>
                   {
                       Console.WriteLine(item.PublisherID + "\t" + item.PublisherName);
                       return item;
                   }).Count();
           }
       }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值