EF--Model First

Model First先设计Model对象,再由对象生成数据库。

1、新建控制台项目,名称ModelFirst,确定。

2、点击选中项目,右键-->添加-->新建项目--选择数据模板-->ADO.Net实体数据模型-->添加。选择空模型-->下一步。

  

  此时项目目录如下:

  

  双击后打开视图设计页面。在顶部菜单--视图--工具箱,打开实体设置工具箱。

3、双击打开Model1.edmx后,在设计页面右键-->新增-->实体

  

  弹出实体,输入实体名称、实体集名称、主键属性名称如下图,点击确定。

  

4、添加属性,实体添加后,左键单击选择实体-->右键-->新增-->标量属性。

  

  属性分别为FirstName,MiddleName,LastName,PhoneNumber.

5、修改命名,在设计器窗口,右键-->属性。

  

6、开始生成数据库操作。在设计窗口,右键-->根据模型生成数据库(G)...

  

7、设置连接

  

 

 确定后点击下一步,选择版本6.0(如果有),会进入数据库生成DDL模板,点击完成。完成后项目中会添加model.edmx.sql文件,复制到数据库管理工具执行即可。

8、数据库生成操作。复制model.edmx.sql文件,到数据库管理窗口并执行操作。

  

 9、数据添加读取,在项目中修改main方法内容如下。   

 static void Main(string[] args)
        {
            using (var context = new PersonContext())
            {
                var person = new Person
                {
                    FirstName = "Robert",
                    MiddleName = "Allen",
                    LastName = "Doe",
                    PhoneNumber = "867-5309"
                };
                context.People.Add(person);
                person = new Person
                {
                    FirstName = "John",
                    MiddleName = "K.",
                    LastName = "Smith",
                    PhoneNumber = "824-3031"
                };
                context.People.Add(person);
                person = new Person
                {
                    FirstName = "Billy",
                    MiddleName = "Albert",
                    LastName = "Minor",
                    PhoneNumber = "907-2212"
                };
                context.People.Add(person);
                person = new Person
                {
                    FirstName = "Kathy",
                    MiddleName = "Anne",
                    LastName = "Ryan",
                    PhoneNumber = "722-0038"
                };
                context.People.Add(person);
                context.SaveChanges();

                Console.WriteLine("---------------数据已添加------------");

                foreach (var item in context.People)
                {
                    Console.WriteLine("FullName:{0}{1}{2}", item.FirstName, item.MiddleName, item.LastName);
                }

                Console.ReadKey();


            }
        }
View Code

 

总结:Model先建数据实体再根据实体生成数据库,适用全新项目快速建库。

 

 参考资料:EF6Recipes 第二版。

  

posted @ 2017-07-19 05:02  mopheify  阅读(175)  评论(0编辑  收藏  举报