仓库
本仓库是以下.NET Foundation项目的所在地。这些项目由Microsoft维护,并根据MIT许可证授权。
Entity Framework Core
EF Core是.NET的现代对象数据库映射器。它支持LINQ查询、变更跟踪、更新和架构迁移。EF Core可与SQL Server、Azure SQL Database、SQLite、Azure Cosmos DB、MySQL、PostgreSQL以及通过提供程序插件API支持的其他数据库一起使用。
安装
EF Core可在NuGet上获取。请安装与目标数据库对应的提供程序包。有关其他数据库,请参阅文档中的提供程序列表。
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
dotnet add package Microsoft.EntityFrameworkCore.Sqlite
dotnet add package Microsoft.EntityFrameworkCore.Cosmos
使用--version
选项可指定要安装的预览版本。
每日构建
我们建议使用每日构建来获取最新代码并提供有关EF Core的反馈。这些构建包含最新的功能和错误修复;预览版和正式版本会明显滞后。
基本用法
以下代码演示了EF Core的基本用法。有关配置DbContext
、定义模型和创建数据库的完整教程,请参阅文档中的入门指南。
using var db = new BloggingContext();
// 向数据库插入数据
db.Add(new Blog { Url = "http://blogs.msdn.com/adonet" });
db.SaveChanges();
// 查询
var blog = db.Blogs
.OrderBy(b => b.BlogId)
.First();
// 更新
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();
// 删除
db.Remove(blog);
db.SaveChanges();
从源代码构建
大多数人通过安装预构建的NuGet包来使用EF Core,如上所示。或者,可以直接在开发机器上构建代码并创建包。
贡献
我们欢迎社区提交用于修复错误、增强功能和文档的拉取请求。有关更多信息,请参阅如何贡献。
获取支持
如果您对使用这些项目有特定问题,我们鼓励您在Stack Overflow上提问。如果遇到bug或想请求新功能,请提交issue。有关更多详细信息,请参阅获取支持。
Microsoft.Data.Sqlite
Microsoft.Data.Sqlite是一个轻量级的SQLite ADO.NET提供程序。EF Core的SQLite提供程序是基于这个库构建的。然而,它也可以独立使用或与其他数据访问库一起使用。
安装
最新的稳定版本可在NuGet上获取。
dotnet add package Microsoft.Data.Sqlite
使用--version
选项可指定要安装的预览版本。
每日构建
我们建议使用每日构建来获取最新代码并提供有关Microsoft.Data.Sqlite的反馈。这些构建包含最新的功能和错误修复;预览版和正式版本会明显滞后。
基本用法
这个库实现了常见的ADO.NET抽象,如连接、命令、数据读取器等。有关更多信息,请参阅Microsoft Docs上的Microsoft.Data.Sqlite。
using var connection = new SqliteConnection("Data Source=Blogs.db");
connection.Open();
using var command = connection.CreateCommand();
command.CommandText = "SELECT Url FROM Blogs";
using var reader = command.ExecuteReader();
while (reader.Read())
{
var url = reader.GetString(0);
}
从源代码构建
大多数人通过安装预构建的NuGet包来使用Microsoft.Data.Sqlite,如上所示。或者,可以直接在开发机器上构建代码并创建包。
贡献
我们欢迎社区提交用于修复错误、增强功能和文档的拉取请求。有关更多信息,请参阅如何贡献。
获取支持
如果您对使用这些项目有特定问题,我们鼓励您在Stack Overflow上提问。如果遇到bug或想请求新功能,请提交issue。有关更多详细信息,请参阅获取支持。