(转)EF三种编程方式详细图文教程(C#+EF)之Database First

Entity Framework4.1之前EF支持“Database First”和“Model First”编程方式,从EF4.1开始EF开始支持支持“Code First”编程方式,今天简单看一下EF三种编程方式。

开始介绍这三种EF操作方式之前,首先在Visual Studio 2013中建立一个数据库连接,这里我们以“EFDemo”数据库为例:

image

说明:在这里我用的是Lenovo\SQLEXPRESS这个数据库,当然用localdb也可以。

Database First

“Database First”模式我们称之为“数据库优先”,前提是你的应用已经有相应的数据库,你可以使用EF设计工具根据数据库生成数据数据类,你可以使用Visual Studio模型设计器修改这些模型之间对应关系。

首先创建一个控制台应用程序,然后右键添加新建项,选择“ADO.NET Entity Data Model”,名称输入EFDemoDB:

image

接着选择从数据库生成:

image

下一步选择数据库连接,选择我们刚刚建的EFDemo数据库。

image

下拉框里没有,我们点击新建连接

image
image
image

然后选择表

image

创建完模型之后

你会发现Visual Studio自动为你生成了“Class、“Student”两个实体类和一个“EFDemoDB”数据库上下文操作类:

image

下面简单的看一下如何使用EF进行数据查询,通过下面的代码我们可以看到EF对于数据的操作入多么优雅:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace EFDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            EFDemoEntities db = new EFDemoEntities();
         
            //按照ID排序,并查找
            var model = db.Classes.OrderBy(m => m.ID).Select(m => new
            {
                ID = m.ID,
                Name = m.Name              
            });

            
            if(model.Count() > 0)
            {
                Console.WriteLine("ID号:{0}", model.First().ID);
                Console.WriteLine("班级名:{0}", model.First().Name);
            }
        }
    }
}

运行结果:

image

注意:如果你的数据库表结构发生改变后,只需在模型设计视图空白处右键,选择“从数据库更新模型”接着按照向导操作即可。(如下图)

image

你可能感兴趣的:((转)EF三种编程方式详细图文教程(C#+EF)之Database First)