C# EF Core可视化工具的使用以及EF Core入门语句

  • Post author:
  • Post category:其他





前言


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包后,也可以使用语句生成上下文和模型



版权声明:本文为qq_39935495原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。