Entity Framework之DB First方式详解
介绍
Entity Framework是微软公司的一个开源对象关系映射(ORM)框架,可以让开发人员通过面向对象的方式操作数据库。它支持不同的开发模式,包括Code First、Model First和DB First。
本文将介绍Entity Framework的DB First开发模式,详细描述如何使用DB First开发模式生成实体类、上下文和数据库。
步骤
步骤一:创建数据库
首先需要在SQL Server中创建一个数据库。在本例中,我们将创建一个名为test的数据库。
步骤二:创建数据模型
-
打开Visual Studio,并选择“新建项目”,选择“Class Library”项目类型。
-
在项目中,右键单击“项目”文件夹,选择“添加” > “新建项”,选择“ADO.NET Entity Data Model”。
-
在“Entity Data Model”向导中选择“Generate from database”。
-
设置数据库连接字符串,并选择要生成模型的表和视图。
-
完成向导后,会在项目中生成一个.edmx文件,此文件包含了从数据库生成的实体类和上下文。
步骤三:使用生成的实体类和上下文
-
在关联的项目中引用包含.edmx文件的类库项目。
-
在代码中创建实例化的上下文对象,如下所示:
csharp
using (var context = new TestEntities())
{
// 在这里可以对实体进行增删改查操作,如下所示:
var list = context.Users.ToList();
var user = new User();
user.Name = "张三";
context.Users.Add(user);
context.SaveChanges();
}
上面的代码首先创建了一个TestEntities的实例,然后查询了用户列表,并新增了一个用户,最后保存了更改。
- 要查询,可以像这样:
csharp
var user = context.Users.FirstOrDefault(p => p.Id == 1);
Console.WriteLine(user.Name);
示例
下面示例中,我们将从一个名为“Test”的数据库生成数据模型,并使用查询和添加来操作数据。
using System;
using System.Linq;
using TestLibrary;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
using (var context = new TestEntities())
{
// 查询用户列表
var userList = context.Users.ToList();
foreach (var user in userList)
{
Console.WriteLine(user.Name);
}
// 新增一个用户
var newUser = new User();
newUser.Name = "张三";
context.Users.Add(newUser);
context.SaveChanges();
}
Console.ReadKey();
}
}
}
在以上示例中,首先通过实例化TestEntities类来查询用户列表并输出,然后新增一个用户后保存更改。
总结
本文介绍了Entity Framework的DB First开发模式,以及如何从数据库中生成模型并操作数据。DB First是一种快速开发模式,可以通过简单的步骤从现有的数据库中创建实体类和上下文,快速实现数据操作。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Entity Framework之DB First方式详解 - Python技术站