ModelFirst就是先设计实体数据类型,然后根据设计的数据类型,生成数据库表
1.新建项--ADO.NET实体数据模型--空数据模型--进入模型设计器(点击xxx.edmx文件也能进入设计器)。
2.从工具箱中,拖一个数据模型(或右击,添加实体,注意,“实体名称”和“实体集“不要留有中文)--右击新建属性。
*实体名称就是数据对象类的名称,实体集就是对应表名的名称
*新建的属性,按F4能迅速打开属性设置,能设置是否为NULL,默认值,数据类型等等。
*如果设置为默认值,那么在实体类的构造函数中,会给属性赋初值。
*新建一个实体,对应就是新建一个数据表
3.右击,添加关联,能设置“一对多关系”,那么,将来在写代码的时候,假如Model1为一,Model2为多,
就可以 : Model1.model2的方式,来访问表2的内容了
*在数据模型上,就表现为:
Model1中,多了一个名字为Model2的属性,而Model2中,就多了类型为Model1的属性。
***而看C#代码,就表型为:
Model1中,除了自己的固有属性外,多了 public virtual ICollectoin<Model2> Model2{get;set;}
Model2中,除了自己的固有的属性外,多了 public int ModelID{get;set;}和
public virtual Model1 Model1{get;set;};
4.可根据模型生成SqlServer数据库,在模型设计器中,右击“根据模型生成数据库”。
**插入操作
var dbContext = new XXXXContainer();
//往Model1表中添加mdel1
var model1 = new Model1();
dbContext.Model1.Add(model1);
//往model2表中添加model2
var model2 = new Model2();
dbContext.Model2.add(model2);
var model2_ = new Model2();
dbContext.Model2.add(model2_);
//使model1和两个model2关联
model1.Model2.add(model2);
model1.Model2.add(model2_);
//保存,执行Sql
dbContext.SaveChange();