以下文章提供了实体框架 C# 的概述。实体框架是一种对象关系映射 (ORM),它通过消除应用程序中的冗余作业来帮助提高用户的应用程序生产力。 EF 构建了在 DB 中写入或读取数据所需的 DB 命令并完美执行它们。最后,EF 在 DB 中执行查询,并将结果放入域对象中以供应用程序使用。
实体框架是.Net应用程序的对象源关系映射(ORM)框架,它允许开发人员使用特定于域的对象来处理关系数据,而无需了解数据库中的列和表。数据被存储。此外,它还描述了实体框架最大限度地减少了开发人员通常编写的数据访问代码。
假设部门表和员工表被视为包含多个部门的记录以及各个部门的员工。
为了实现这一点,我们必须构建 Department 和 Employee 类。然后,为了从数据库检索这些数据,我们需要编写 ADO.NET 代码。最后,当检索数据时,我们必须创建 Employee 和 Department 对象,以使用恢复的数据填充它们。
上面的整个事情很繁琐,但是通过Entity Framework,这很容易;这些事情可以自动完成;我们需要向 EF 提供 DB Schema。让我们看看以下使用 EF 创建应用程序的步骤。
要创建数据库模式,请使用 SQL 脚本创建数据库 EF_Demo_DB 并创建 Employee 和 Department 表
代码:
-- to create the Database EF_Demo_DB CREATE DATABASE EF_Demo_DB; GO -- Use EF_Demo_DB database USE EF_Demo_DB; GO -- to Create the table Departments CREATE TABLE Departments ( ID INT PRIMARY KEY IDENTITY(1,1), Name VARCHAR(50), Location VARCHAR(50) ) Go -- to Create the table Employees CREATE TABLE Employees ( ID INT PRIMARY KEY IDENTITY(1,1), Name VARCHAR(50), Email VARCHAR(50), Gender VARCHAR(50), Salary INT, DepartmentId INT FOREIGN KEY REFERENCES Departments(ID) ) Go -- --to Populate the table with few records INSERT INTO Departments VALUES ('HR', 'Bangalore') INSERT INTO Departments VALUES ('Sales', 'Cochin') INSERT INTO Departments VALUES ('IT', 'Chennai') Go --to Populate the table with few records INSERT INTO Employees VALUES ('Philip', '[email protected]', 'Male', 45000, 2) INSERT INTO Employees VALUES ('Mary', '[email protected]', 'Female', 30000, 2) INSERT INTO Employees VALUES ('Valarie', '[email protected]', 'Female', 35000, 3) INSERT INTO Employees VALUES ('John', '[email protected]', 'Male', 80000, 1) INSERT INTO Employees VALUES ('Joseph', 'jojog.com', 'Male', 60000, 1) INSERT INTO Employees VALUES ('Steve', '[email protected]', 'Male', 45000, 3) INSERT INTO Employees VALUES ('Peter', '[email protected]', 'Male', 60000, 1) INSERT INTO Employees VALUES ('Rio', '[email protected]', 'Female', 345000, 3) INSERT INTO Employees VALUES ('Ben', '[email protected]', 'Male', 70000, 1) Go
创建控制台应用程序
数据准备好后,创建一个名为 EFDemo 的新控制台应用程序,如下所示:
添加 ADO.NET 实体数据模型
要创建控制台应用程序,请添加 ADO.NET 实体数据模型,然后右键单击项目并添加 -New Item-Data- ADO.NET 实体数据模型,并将名称命名为 EmployeeDataModel,如下所示。
单击“添加”按钮后,从数据库中选择 EF 设计器,然后单击“下一步”按钮,如下所示从数据库中选择 EF 设计器;在这里,我们使用 EF 数据库优先方法。
单击“下一步”按钮后,它会要求您选择如图所示的数据连接向导;单击“新建连接”按钮。
单击“新建连接”按钮后,提供必要的数据库详细信息,最后“测试连接”,然后单击“确定”。
选择数据连接并将实体连接设置保存在App中。然后,如下所示进行配置,命名为 EF_Demo_DBEntities,然后单击“下一步”按钮。
此处要求您选择 Entity Framework 6.x 并选择“下一步”按钮,如图所示。
选择所需的表,将模型命名空间更改为“EmployeeModel”,然后单击“完成”按钮,如图所示。
单击“完成”按钮会生成 EmployeeDataModel.edmx 文件。
这是 EDMX 文件的结构,如下所示,
使用 EF,我们创建了应用程序。
代码:
namespace EFDemo { class Program { static void Main(string[] args) { using (EF_Demo_DBEntities DBEntities = new EF_Demo_DBEntities()) { List<Department> listDepartments = DBEntities.Departments.ToList(); Console.WriteLine(); foreach (Department dept in listDepartments) { Console.WriteLine(" Department = {0}, Location = {1}", dept.Name, dept.Location); foreach (Employee emp in dept.Employees) { Console.WriteLine("\t Name = {0}, Email = {1}, Gender = {2}, salary = {3}", emp.Name, emp.Email, emp.Gender, emp.Salary); } Console.WriteLine(); } Console.ReadKey(); } } } }
实体框架功能:
让我们看看实体框架的特点:
在本文中,我们了解了 EF 的功能以及如何创建实体框架。然而,与 EF 相比,使用 ADO.NET 代码是乏味的。此外,这是一个耗时且容易出错的过程,因此 Microsoft 提供了一个名为 Entity Framework 的框架来为我们的应用程序自动执行整个与数据库相关的工作。
以上是实体框架 C#的详细内容。更多信息请关注PHP中文网其他相关文章!