首页 > 解决方案 > 访问使用 DBContext 创建的数据库

问题描述

最近我开始为一份新工作学习 C# 和 ASP.NET Core,作为实践的一部分,我为包含数据库的 CRUD 操作创建了一个小 api,我使用实体框架核心创建了数据库。我想弄清楚这个数据库是如何创建的以及其中的所有表,因为在代码中我没有提到任何表名或其他东西..?还有一件事是我可以使用 SSMS 或其他一些 GUI 访问这个数据库来实际查看数据吗?注意:我使用的是 Visual Studio 2019

namespace TodoApi.Models
{
    public class TodoContext : DbContext
    {
        public TodoContext(DbContextOptions<TodoContext> options)
            : base(options)
        {}

        public DbSet<TodoItem> TodoItems { get; set; }
    }
}

启动.cs:

 services.AddDbContext<TodoContext>(opt =>
       opt.UseInMemoryDatabase("TodoList"));

先感谢您 !

标签: c#asp.net.net

解决方案


因此,您使用的是内存数据库。这意味着它最终都存储在应用程序的内存中。这意味着磁盘上没有文件,也无法使用像 SSMS 这样的工具远程访问它。这也是为什么您不需要指定表名等的原因,因为内存数据库不需要它,因为它只是一种将所有数据存储在数组中的奇特方式,作为一个简单的类比。内存提供程序的主要用途是用于测试。

如果您希望能够在 SSMS 等工具中查看数据库的内容,则需要使用SQL Server 提供程序(需要连接字符串等),该提供程序将配置为opt.UseSqlServer(...). 或者,如果您不想使用 SQL Server,则可以使用SQLite 提供程序

可以在此处找到有关可用的不同提供程序的文档。


推荐阅读