文章目錄
- 前言
- 一、EF Core Tools的下載下傳
- 二、EF Core Tools的使用
-
- 1.建立項目并引入EFCoreTools
- 2.手動引入EFCore的包
- 三、EFCore的填查删改
-
- 1.添加操作
- 2.查找操作
-
- (1).通過主鍵查詢
- (2).用Lambda語句查詢
- 3.删除操作
- 4.修改操作
- 四、總結
前言
Entity Framework (EF) Core 是輕量化、可擴充、開源和跨平台版的常用 Entity Framework 資料通路技術。
一、EF Core Tools的下載下傳
EFCore Tools可視化工具
下載下傳後安裝,并重新開機ViusalStudio
二、EF Core Tools的使用
1.建立項目并引入EFCoreTools
建立C#項目
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiYTMfhHLlN3XnxCM38FdsYkRGZkRG9lcvx2bjxCMy8VZ6l2cskWaiZzUyolNvtUY1QTc3UTQClGVF5UMR9Fd4VGdsATNfd3bkFGazxSUhxGatJGbwhFT1Y0Mk9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLyQDNiVTY0YGM4E2M3cTNhRDNmRzM0cDMihTN4cTO4YzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
右鍵項目并打開EF Core 工具
添加資料庫連接配接
PS:資料庫要提前配置外部連接配接,不然會出現無法連接配接的情況
連接配接完成後選擇要載入的表
設定載入的一些資料,包括上下文的路徑,模型的路徑,和命名空間等
若不會配置,可以框選在生成的代碼中包含連接配接字元串
2.手動引入EFCore的包
VisualStudio可能無法直接安裝EFCore包,可以手動安裝Nuget包,包名如下
Microsoft.EntityFrameworkCore.SqlServer
完成後會生成所有的模型和一個上下文檔案
PS:注意預設資料庫字段的時候需要指定主鍵,每個表都需要,不然可能會造成錯誤
三、EFCore的填查删改
1.添加操作
//先建立對象和上下文
DB_TestContext context = new DB_TestContext();
var user = new TbUser();
//初始化user資料
user.Uid = "TestUid";
user.Pwd = "abcdef";
//加入資料并更新修改
context.TbUser.Add(user);
context.SaveChanges();
2.查找操作
(1).通過主鍵查詢
DB_TestContext context = new DB_TestContext();
var result = context.TbUser.Find("TestUid");
if (result == null) Console.WriteLine("該主鍵不存在");
else Console.WriteLine($"result的uid:{result.Uid} pwd:{result.Pwd}");
(2).用Lambda語句查詢
PS:使用Lambda語句的時候請引入System.Linq
DB_TestContext context = new DB_TestContext();
var result = context.TbUser.Where(s => s.Uid == "TestUid").FirstOrDefault();
if (result == null) Console.WriteLine("該主鍵不存在");
else Console.WriteLine($"result的uid:{result.Uid} pwd:{result.Pwd}");
3.删除操作
PS:删除其實就是先要查到資料,用Find或者Where都可以
DB_TestContext context = new DB_TestContext();
var result = context.TbUser.Where(s => s.Uid == "TestUid").FirstOrDefault();
if (result == null) Console.WriteLine("該主鍵不存在");
else
{
context.TbUser.Remove(result);
context.SaveChanges();
}
PS:删除完了記得儲存修改
4.修改操作
DB_TestContext context = new DB_TestContext();
var result = context.TbUser.Where(s => s.Uid == "TestUid").FirstOrDefault();
if (result == null) Console.WriteLine("該主鍵不存在");
else
{
result.Pwd = "1111111111111111";
context.SaveChanges();
}
PS:修改完後也要儲存嗷
四、總結
1.EFCore的使用可以大大簡化原生SQL語句的書寫
2.該教程隻是展示了EFCore的冰山一角
3.比如上下文的生成可以按需自己寫
4.EF Core Tool隻是友善生成上下文和模型
5.再引入Nuget包後,也可以使用語句生成上下文和模型