Я работаю над API Asp.Net Core 3.1. У меня есть несколько таблиц в базе данных SQL Server.
Я пытаюсь использовать базу данных InMemory и пытаюсь загрузить данные в эти таблицы при запуске приложения.
Я написал код ниже.
public partial class MyContext : DbContext
{
public MyContext ()
{
}
public MyContext (DbContextOptions<MyContext > options)
: base(options)
{
}
public virtual DbSet<TestEntity> TestEntity{ get; set; }
...
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
if (!optionsBuilder.IsConfigured)
{
optionsBuilder.UseInMemoryDatabase("name=RuleDB");
}
}
Startup.cs
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<MyContext>(opt => opt.UseInMemoryDatabase("myDbName"));
appsettings.json
"ConnectionStrings": {
"RuleDB": "Server=tcp:xyz.database.windows.net,1433;Initial Catalog=myDB;Persist Security Info=False;User ID=test;Password=****;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30"
}
Когда я пытаюсь сделать context.TestEntity.ToList();
, он не показывает никаких записей.
В основном я пытаюсь загрузить данные из моей базы данных SQL Server в мою базу данных InMemory при запуске приложения.
Я пропустил какие-либо шаги, это не очень хороший подход (я имею в виду, должен ли я использовать InMemory Cache вместо базы данных InMemory)?