当前位置:主页 > 软件编程 > .NET代码 >

C# EF Core可视化工具的使用及EF Core入门语句操作代码

时间:2022-09-05 10:01:15 | 栏目:.NET代码 | 点击:

前言

Entity Framework (EF) Core 是轻量化、可扩展、开源和跨平台版的常用 Entity Framework 数据访问技术。

一、EF Core Tools的下载

EFCore Tools可视化工具
下载后安装,并重启ViusalStudio

二、EF Core Tools的使用

1.新建项目并引入EFCoreTools

新建C#项目

右键项目并打开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包后,也可以使用语句生成上下文和模型

您可能感兴趣的文章:

相关文章