как сбросить inMemoryDatabase и ее первичный ключ - PullRequest
0 голосов
/ 25 апреля 2019

Я использую базу данных inMemoryDatabase в своем основном веб-интерфейсе asp.net, она определяется следующим образом: в файле startup.cs:

services.AddDbContext<TempContext>(options => options.UseInMemoryDatabase("ImageDataBase"));

в контексте:

public class TempContext : DbContext
{
  public TempContext(DbContextOptions options) : base(options)
  { }

  public DbSet<Images> Images { get; set; }

класс изображений:

public class PathImages
{
  public int Id { get; set; }
  public string RawImage { get; set; }
  public string ProcessedImage { get; set; }
}

, и я хотел бы сбросить его в зависимости от того, что пользователь делает на стороне клиента.поэтому я попытался в контроллере представления:

_context.Images.RemoveRange(_context.Images.ToArray());
await _context2.SaveChangesAsync();

, но первичный ключ не был сброшен, и мое представление нуждается в его сбросе.

затем я попытался:

await _context.Database.EnsureDeletedAsync();

и

await _context.Database.EnsureCreatedAsync();

но первичный ключ также не сбрасывается.

есть ли способ сбросить базу данных памяти, включая ее первичный ключ?

1 Ответ

2 голосов
/ 25 апреля 2019

В настоящее время нет.Однако это было исправлено в EF Core 3.0 Preview 4.Объявление EF Core 3.0 Preview 4 и связанная с ним проблема Github .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...