This repository is home to the following .NET Foundation projects. These projects are maintained by Microsoft and licensed under the MIT License.
EF Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations. EF Core works with SQL Server, Azure SQL Database, SQLite, Azure Cosmos DB, MySQL, PostgreSQL, and other databases through a provider plugin API.
EF Core is available on NuGet. Install the provider package corresponding to your target database. See the list of providers in the docs for additional databases.
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
dotnet add package Microsoft.EntityFrameworkCore.Sqlite
dotnet add package Microsoft.EntityFrameworkCore.Cosmos
Use the --version
option to specify a preview version to install.
We recommend using the daily builds to get the latest code and provide feedback on EF Core. These builds contain latest features and bug fixes; previews and official releases lag significantly behind.
The following code demonstrates basic usage of EF Core. For a full tutorial configuring the DbContext
, defining the model, and creating the database, see getting started in the docs.
using (var db = new BloggingContext())
{
// Inserting data into the database
db.Add(new Blog { Url = "http://blogs.msdn.com/adonet" });
db.SaveChanges();
// Querying
var blog = db.Blogs
.OrderBy(b => b.BlogId)
.First();
// Updating
blog.Url = "https://devblogs.microsoft.com/dotnet";
blog.Posts.Add(
new Post
{
Title = "Hello World",
Content = "I wrote an app using EF Core!"
});
db.SaveChanges();
// Deleting
db.Remove(blog);
db.SaveChanges();
}
Most people use EF Core by installing pre-build NuGet packages, as shown above. Alternately, the code can be built and packages can be created directly on your development machine.
We welcome community pull requests for bug fixes, enhancements, and documentation. See How to contribute for more information.
If you have a specific question about using these projects, we encourage you to ask it on Stack Overflow. If you encounter a bug or would like to request a feature, submit an issue. For more details, see getting support.
Microsoft.Data.Sqlite is a lightweight ADO.NET provider for SQLite. The EF Core provider for SQLite is built on top of this library. However, it can also be used independently or with other data access libraries.
The latest stable version is available on NuGet.
dotnet add package Microsoft.Data.Sqlite
Use the --version
option to specify a preview version to install.
We recommend using the daily builds to get the latest code and provide feedback on Microsoft.Data.Sqlite. These builds contain latest features and bug fixes; previews and official releases lag significantly behind.
This library implements the common ADO.NET abstractions for connections, commands, data readers, and so on. For more information, see Microsoft.Data.Sqlite on Microsoft Docs.
using (var connection = new SqliteConnection("Data Source=Blogs.db"))
{
connection.Open();
var command = connection.CreateCommand();
command.CommandText = "SELECT Url FROM Blogs";
using (var reader = command.ExecuteReader())
{
while (reader.Read())
{
var url = reader.GetString(0);
}
}
}
Most people use Microsoft.Data.Sqlite by installing pre-build NuGet packages, as shown above. Alternately, the code can be built and packages can be created directly on your development machine.
We welcome community pull requests for bug fixes, enhancements, and documentation. See How to contribute for more information.
If you have a specific question about using these projects, we encourage you to ask it on Stack Overflow. If you encounter a bug or would like to request a feature, submit an issue. For more details, see getting support.
1.EFCore是什么 Entity Framework (EF) Core 是轻量化、可扩展、开源和跨平台版的常用 Entity Framework数据访问技术。 简单来说EFCore是一种ORM的技术。 熟悉EF开发模式的大都知道,EF主要有三种模式进行开发:DataFirst、CodeFirst、ModelFirst。 而EFCore主要支持两种开发方法: 1、CodeFirst(代码优先)
一、ef core 读取text类型慢_ef core读取大字符串字段慢 分析: 当服务器配置低,text富文本字符串比较大超过100kb的时候,使用ef读取数据明显变慢。 变慢的两大使用特点: 1.text 类型富文本字段内容太长,100kb以上 2.读取时候还关联了其他表的数据。 此两种特点,导致ef core读取数据慢,慢的明显。 解决方案: 业务方案: 建议text字段不要存入太大的字符;
LINQ和EFCore基础 LINQ基础 语言集成查询(Language Integrated Query)是一组语言扩展,用于处理数据序列,然后对它们进行过滤、排序,并将它们投影到不同的输出。 LINQ查询语法是定义在Enumable里的,这就意味着LINQ不仅可以对内置序列进行操作,比如List,Dictionary,Stack等,也可以对Sqlite,MySql等数据库内容进行操作。仔细观察
一、EFCore简介 1.是对与底层ADO.Net Core的封装,ADO.Net Core支持的数据库,EFCore不一定支持 2.EFCore支持目前市面大部分主流数据库 3.EFCore尽力在屏蔽底层数据库的差异,也就是不写具体的sql语句, EFCore自动将你的代码转换为对应数据库的SQL语句,当然EFCore的动作也不可预测也就是你看不到具体写的Sql语句,不知道底层发生Sql了什么
目录 一、EF Core的性能之AsNoTracking 二、Find和FindAsync方法 三、全局查询筛选器 四、悲观并发控制 五、乐观并发控制 一、EF Core的性能之AsNoTracking EF Core 默认会对通过上下文查询出来的所有实体类进行,以便于在执行 SaveChanges 的时候把实体类的改变同步到数据库中。上下文不仅会跟踪对象的状态改变,还会通
一、EFCore 基础入门教程 EF 框架的简介、发展历史;ORM框架概念 学习地址: https://blog.csdn.net/u011127019/article/details/129212786?spm=1001.2014.3001.5502 EFCore 安装,引入、支持的数据库 学习地址: https://www.cnblogs.com/tianma3798/p/6835400.ht
EFCore调优篇· 注 命令执行=工具》Nuget包管理器》程序包管理控制台 一.DBFirst 1.引入程序包 Install-Package Microsoft.EntityFrameworkCore.SqlServer Install-Package Microsoft.EntityFrameworkCore.Tools Install-Package Microsoft.EntityFr
这里默认使用sql server数据库 DBFirst nuget引入程序集 Microsoft.EntityFrameworkCore Microsoft.EntityFrameworkCore.SqlServer Microsoft.EntityFrameworkCore.Design Microsoft.EntityFrameworkCore.Tools Microsoft.Extensio
EFCore.BulkExtensions 简介 EntityFrameworkCore扩展:批量操作(插入,更新,删除,读取,更新,同步)和批处理(删除,更新)。 库是轻量级的,并且非常高效,具有所有最常用的CRUD操作。 在Microsoft推荐的EFcore扩展 Top 20。 当前版本使用的是EF Core 3.1,目前支持Microsoft SQL Server(2008+)和SQLit
我正在运行efcore 2.0.1。 我有一个模型: 我在这两个类上没有流利的api。但当我生成迁移时 为什么它会生成onDelete:ReferentialAction。当文档说明应将其作为ClientSetNull处理时进行限制 https://docs.microsoft.com/en-us/ef/core/saving/cascade-delete 行为名称|对记忆中的依赖项/子项的影响|
我正在使用一个应用程序使用和第一种方法与。我正在使用包,成功映射db模型,但当我尝试从获取数据时,得到错误 ORA-00904:“m”。“Id”:无效标识符 Oracle数据库版本:Oracle数据库12c标准版发布12.2.0.1.0-64bit生产 代码: LinQ正在生成以下查询: 由于这不是PL/Sql查询的正确语法,因此获得错误ORA-00904:"m"。"id":无效的标识符。 有没有
我无法让 在 EFCore 1.1 应用程序上运行。 下午 这是它给出的错误: Scaffold-DbContext:无法将参数绑定到参数“Path ”,因为它是空字符串。第1行:1 char:1 Scaffold-DbContext ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ category info:invalid data:(:)[Scaffold-db con
注意 该扩展没有被作为 Entity Framework Core 项目的一部分来维护。当考虑第三方扩展的时候,一定要评估其质量、许可、支持情况等等以确保它们符合你的需求。 尝试在支持测试的 API 中捕获一些好的或最佳的实践 —— 包含一个用于扫描 N+1 查询的小框架。 以下资源有助于你入门使用 EntityFrameworkCore.Practices。 EntityFrameworkCor