«Экземпляр типа объекта не может быть отслежен.» Ошибка при написании модульного теста с помощью xUnit. Я не сталкиваюсьC#

Место общения программистов C#
Anonymous
«Экземпляр типа объекта не может быть отслежен.» Ошибка при написании модульного теста с помощью xUnit. Я не сталкиваюсь

Сообщение Anonymous »


Я завершил свой проект API и отредактировал ошибку, упомянутую в приложении, с помощью AsNoTracking. Однако при вводе теста моего контроллера обновлений обозреватель тестов выдает ошибку:

"Экземпляр типа сущности не может быть отслежен..".

Как я могу решить эту проблему.

Вот мой репозиторий обновлений: (работает безупречно)

public override void Update (объект книги) { var result = _context.Books.AsNoTracking().SingleOrDefault(x => x.ProductId ==entity.ProductId); если (результат == ноль) throw new InvalidOperationException("Güncellemek istediğiniz kitap bulunamadı."); base.Update(сущность); база.Сохранить(); } Вот мой тестовый класс UpdateOperation:

частный только для чтения ApplicationDbContext _context; общедоступный UpdateOperationTests() { var options = новый DbContextOptionsBuilder() .UseInMemoryDatabase(имя базы данных: Guid.NewGuid().ToString()).UseQueryTrackingBehavior(QueryTrackingBehavior.NoTracking).Options; _context = новый ApplicationDbContext (параметры); _context.Database.EnsureCreated(); } [Факт] публичная пустота UpdateBook() { /* Договариваться */ вар newBook ​​= BookMockData.UpdateBook(); _context.Books.AddRange(BookMockData.GetBooks()); _context.SaveChanges(); вар sut = новый BookRepository(_context); /* Утверждать и действовать */ FluentActions.Invoking(() => sut.Update(newBook)).Should().NotThrow(); } И вот моя ошибка:


Изображение

Вернуться в «C#»