📅  最后修改于: 2023-12-03 15:33:13.730000             🧑  作者: Mango
Microsoft.EntityFrameworkCore.InMemory
: 1.0.0
Microsoft.EntityFrameworkCore.InMemory
是 .NET Core 的一个 Entity Framework Core (EFCore) 的 In-Memory 数据库提供程序,它允许开发人员在内存中创建和使用轻量级的数据库,而不需要专门安装或配置任何物理数据库。
或者通过在控制台中运行以下命令安装:
Install-Package Microsoft.EntityFrameworkCore.InMemory -Version 1.0.0
首先,从 EFCore 中构建指向 InMemory
数据库的数据上下文,如下所示:
using Microsoft.EntityFrameworkCore;
using System.Collections.Generic;
public class Blog
{
public int BlogId { get; set; }
public string Url { get; set; }
public int Rating { get; set; }
public ICollection<Post> Posts { get; set; }
}
public class Post
{
public int PostId { get; set; }
public string Title { get; set; }
public string Content { get; set; }
public int BlogId { get; set; }
public Blog Blog { get; set; }
}
public class BloggingContext : DbContext
{
public DbSet<Blog> Blogs { get; set; }
public DbSet<Post> Posts { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
=> optionsBuilder.UseInMemoryDatabase("MyDatabase");
}
然后,您可以使用实体框架领域模型上的查询和修改操作来与在内存中创建的数据库进行交互:
using (var context = new BloggingContext())
{
var blog = new Blog { Url = "http://blogs.msdn.com/dotnet", Rating = 5 };
context.Blogs.Add(blog);
context.SaveChanges();
var blogs = context.Blogs
.OrderBy(b => b.Rating)
.ToList();
}
InMemory
数据库?InMemory
数据库,因为它很容易处理,并且无需依赖于数据库服务器或文件。Microsoft.EntityFrameworkCore.InMemory
包是使用 Entity Framework Core (EFCore) 的一个内存数据库。通过使用此数据库提供程序,开发人员可以轻松地使用标准 EFCore 的 API 在内存中存储、检索和操作数据。这对于开发、测试和快速原型验证过程非常有用。