首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

面向初学者的 Entity Framework Core

实体框架核心(Entity Framework Core,简称EF Core)是一款适用于.NET应用程序的开源、轻量级且跨平台的对象关系映射器(Object-Relational Mapper,简称ORM...它允许开发人员使用.NET对象来操作数据库,从而无需编写大多数SQL查询语句。EF Core通过对数据库交互的复杂性进行抽象,使得数据访问代码更易于维护、扩展和测试。...ORM(对象关系映射)是软件开发中用于在不兼容的系统(如数据库和编程语言)之间转换数据的一种技术。简单来说,ORM允许你使用面向对象编程的方式与数据库进行交互,而无需编写原始的SQL查询语句。...EF Core中的关键概念 DbContext: DbContext是EF Core中的核心类,用于管理数据库交互操作。它充当了.NET应用程序与数据库之间的桥梁。...: DbSet表示可从数据库中查询的实体集合。

10510
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    EntityFramework Core 学习扫盲

    建立运行环境 新建一个APS.NET CORE WEB模板项目 安装相关Nuget包 //Sql Server Database Provider Install-Package Microsoft.EntityFrameworkCore.SqlServer...//提供熟悉的Add-Migration,Update-Database等Powershell命令,不区分关系型数据库类型 Install-Package Microsoft.EntityFrameworkCore.Tools...包含和排除实体类型 将实体在Context中映射到数据库有多种方式: 使用DbSet定义属性。 在OnModelCreating方法中使用Fluent Api配置。...少数的几个CLR类型在不做处理的情况下,映射到数据库中时将存在可空选项,如string,int?,这种情况也在下列方式中做了说明。...新建一个APS.NET CORE WEB模板项目 安装相关Nuget包 //Sql Server Database Provider Install-Package Microsoft.EntityFrameworkCore.SqlServer

    9.6K90

    如何重构和清理 .NET 代码:编写安全且可维护的代码

    在本文中,我们将探讨 .NET 应用程序中的不良代码示例,并逐步演示如何根据干净的代码原则重构它,包括命名约定、配置管理、SQL 注入预防和更好的结构。...我们将探讨关键原则,例如依赖项注入、关注点分离、错误处理和结构化日志记录,同时我们将示例重构为干净、专业的解决方案。 错误代码 让我们从 .NET 中订单处理工作流的基本示例开始。...此示例存在几个影响可读性、可维护性和安全性的问题。我们将以此为起点,并在整篇文章中将其转换为干净、可维护的代码。 错误代码示例 此示例代码执行订单处理、验证并更新数据库中的订单状态。...using 详细 ADO.NET 代码:SQL 执行的 ADO.NET 样板代码很详细,可以简化。 使用 Clean Code 原则重构代码 要重构此代码,我们将: 实施正确的命名约定。...带有 MediatR 的 CQRS 将读取和写入问题分开,使应用程序更易于维护和测试。 FluentValidation 强制实施一致、可重用的验证规则。

    6710

    Asp.Net Core 轻松学-使用MariaDBMySqlPostgreSQL和支持多个上下文对象

    EFCore 连接 MSSQL 的使用方法,在本章中,将继续介绍如何利用 EFCore 连接到 MariaDB/MySql 和 PostgreSQL 数据库,同时,在一个项目中,如何添加多个数据库上下文对象...,并在业务中使用多个上下文对象,通过这两章的学习,你将掌握使用 EFCore 连接 MSSQL/MariaDB/MySql/PostgreSQL 的能力。...,这种行为将进一步的扩大 .Net Core 的生态圈,进而影响整个开发行业。...,这点非常难得,通过 EFCore,无论你连接到的是哪种类型的数据库,其 API 的使用方式几乎是没有什么不同的,可以让开发人员平滑的过渡。...,和其它类型的注入使用方式没有区别,就是简单的在 HomeController 的构造函数中声明这两个 Context 对象即可 3.2 使用两个上下文对象进行 CURD 操作 下面将演示使用 MySqlForumContext

    2.4K51

    【ASP.NET Core 基础知识】--数据库连接--使用Entity Framework Core进行数据库访问

    是一个关键组件,它负责将 EF Core 的通用功能与具体的数据库引擎进行连接。...ORM 的核心概念包括: 对象(Objects): 在应用程序中表示业务实体。 关系(Relationships): 对象之间的交互和联系,例如一对多、一对一或多对多关系。...减少了编写和维护 SQL 语句的工作量。 提高了代码的可读性和可维护性。 通过 ORM 的查询构建器,可以编写类型安全且易于理解的查询。 提供了对象之间的关系管理,如自动维护关联对象的状态。...在 Entity Framework Core(EF Core)中,ORM 的概念依然适用,EF Core 提供了 ORM 功能,允许开发者使用 .NET 类型(如类和对象)来表示数据库中的表格和数据,...# 使用包管理器安装SQL Server提供程序包 dotnet add package Microsoft.EntityFrameworkCore.SqlServer 然后,你可以创建一个简单的 .NET

    62300

    ABP(ASP.NET Boilerplate Project)快速入门

    记录主要有以下内容: 从官网创建并下载项目(.net core 3.x + vue) 项目在本地成功运行 新增实体并映射到数据库 完成对新增实体的基本增删改查 ABP官网:https://aspnetboilerplate.com...Get started,选择前后端技术栈,我这里就选.net core 3.x和vue。 ? 填写自己的项目名称,邮箱,然后点create my project就可以下载项目了。 ? 解压文件 ?...将MyProject.Web.Host项目设置为启动项,打开程序包管理器控制台,默认项目选择DbContext所在的项目,也就是MyProject.EntityFrameworkCore。...我这里继承了abp的Entity类,Entity类有主键ID属性,这个泛型int是指主键的类型,不写默认就是int。...abp还有一个比较复杂的FullAuditedEntity类型,继承FullAuditedEntity的话就有创建时间,修改时间,创建人,修改人,软删除等字段。这个看实际情况。

    2.3K20

    Entity Framework Core 2.0 入门

    也可以): 输入用户名: 密码: 选择是否保存密码: 最后输入档案的名字: 随后VSCode将尝试连接该数据库, 成功后右下角会这样显示 (我这里输入有一个错误, 数据库名字应该是LearnEF): 随后在该文件中输入下面这个...而对于Owner来说, Company是必须的. 如果针对Owner想让Company是可空的, 那么CompanyId的类型就应该设置成int?....批量添加不同类型的数据: 使用context的AddRange或Add方法, DbContext可以推断出参数的类型, 并执行正确的操作....上面的方法就是使用了DbContext.AddRange方法, 一次性添加了两种不同类型的model. 这两个方法对于写一些通用方法或者处理复杂的情况是很有用的....没错, 只更新了需要更新的对象. 2.1版本将于2018年上半年发布, 请查看官网的路线图: https://github.com/aspnet/EntityFrameworkCore/wiki/roadmap

    3.2K80

    .net 温故知新:【10】.NET ORM框架EFCore使用入门之CodeFirs、DBFirst

    前言:本系列是我自己学习.net相关知识,以便跟上.net跨平台的步伐,目前工作原因基本在.net Framework4.7以下,所以才有了这一系列的学习总结,但是并不是从基本的C#语法和基础知识开始的...从这篇ORM完成之后就将进入asp.net core的学习总结! EFCore Entity Framework Core (EF Core) 是适用于 .NET 的新式对象数据库映射器。...1、Code First 新建一个.net 6.0 控制台应用程序,安装nuget包(EFCore的sqlite提供程序): Install-Package Microsoft.EntityFrameworkCore.Sqlite...由于这是项目的第一次迁移,如果我们修改了模型后再Add-Migration生成的时候EFCore 会在添加列之前将更新的模型与旧模型的快照进行比较。...Iqueryable的作用和数据延迟加载,在我们查询数据的时候列表数据以Iqueryable类型返回,如果我们不是调用获取结果api,则不会立即查询数据库,而是等到使用tolist()、count()、

    2.9K30

    Entity Framework Core 2.0 入门

    也可以): 输入用户名: 密码: 选择是否保存密码: 最后输入档案的名字: 随后VSCode将尝试连接该数据库, 成功后右下角会这样显示 (我这里输入有一个错误, 数据库名字应该是LearnEF...而对于Owner来说, Company是必须的. 如果针对Owner想让Company是可空的, 那么CompanyId的类型就应该设置成int?....批量添加不同类型的数据: 使用context的AddRange或Add方法, DbContext可以推断出参数的类型, 并执行正确的操作....上面的方法就是使用了DbContext.AddRange方法, 一次性添加了两种不同类型的model. 这两个方法对于写一些通用方法或者处理复杂的情况是很有用的....没错, 只更新了需要更新的对象. 2.1版本将于2018年上半年发布, 请查看官网的路线图: https://github.com/aspnet/EntityFrameworkCore/wiki/roadmap

    3.5K140

    Asp.Net Core 轻松学-10分钟使用EFCore连接MSSQL数据库

    Topic.Posts 和 Post.Topic 属性建立了主外键关系,这两个表的主键为 Id,且类型为 int ,这表示在下面的创建数据库过程中,EFCore 会自动的为这两个实体对象建立关系和主键...在 Migrations 文件夹中;当执行 Update-Database 命令后,EFCore 设计工具将根据 Migrations 中的定义去创建数据库,最终,控制台输出 Done 表示创建完成 ?...DB First 的使用方式 在很多时候,我们的开发方式是先设计好数据库模型,然后再生成实体对象,这种方式对于从其它语言迁移到 .Net Core 上非常友好,从现有数据库中生成实体对象非常简单,只需要一个命令即可...,还是以上面创建好的数据库 Forum 为例子 2.1 基于现有数据库生成实体对象,在项目中的包管理器控制台输入命令,指定使用的是 Microsoft.EntityFrameworkCore.SqlServer...如果仅需要生成部分数据表,还可以通过将 -Tables 参数添加到上述命令来指定要为哪些表生成实体。 例如 -Tables Blog,Post。

    1.7K21

    ABP框架 - 我的第一个Web API

    那么接下来我们将动手使用ABP框架快速开发一个API,你将会发现使用ABP框架有多么便利,会实实在在感受到它的魅力。...环境要求 Visual Studio 2017 SQL Server .Net Core SDK 创建应用程序 我们使用ABP模板来创建应用程序,访问http://www.aspnetboilerplate.com...(input.Name); //call other doamin serivce //3.将domain obj转换为output dto...AddProduct -Verbos 执行完成后,会在在AbpTraining.EntityFrameworkCore\Migrations下看到新生成的脚本文件,我这次生成的文件名是20180405043514..._AddProduct.cs (会有一个时间戳前缀,每次会不一样) 5.3 更新数据库 在包管理器控制台中,执行如下命令,将新的实体同步数据库 Update-Database -Verbos 执行完成后

    1.8K80
    领券