Сбой добавления-миграции из-за ошибки начального объектаC#

Место общения программистов C#
Ответить
Anonymous
 Сбой добавления-миграции из-за ошибки начального объекта

Сообщение Anonymous »

Как решить эту проблему в ASP.NET? Вчера я посмотрел видео курса ASP.NET Core MVC для начинающих (.NET 9). Сегодня я продолжаю видео, начиная с «Отношения от одного до многих», но оно показывает эту ошибку.

Код: Выделить всё

using Microsoft.EntityFrameworkCore;
using MyApp.Models;

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

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity().HasData(
new Item { Id=4, Name="microphone", Price=40, SerialNumberId=10 }
);
modelBuilder.Entity().HasData(
new SerialNumber { Id = 10, Name = "MIC150", ItemId=4 }
);

modelBuilder.Entity().HasData(
new Category { Id=1, Name="Electronics" },
new Category { Id = 1, Name = "Books" }
);
base.OnModelCreating(modelBuilder); // Take the ModelBuilder parameter to configure the model and relationship
}

public DbSet Items { get; set; }
public DbSet SerialNumbers { get; set; }
public DbSet Categories { get; set; }
}
Ошибка:

Невозможно создать «DbContext» типа «MyAppContext». Исключение «Исходный объект для типа сущности «Категория» не может быть добавлен, поскольку уже добавлен другой исходный объект с тем же значением ключа для {'Id'}. Рассмотрите возможность использования DbContextOptionsBuilder.EnableSensitiveDataLogging, чтобы увидеть конфликтующие значения ключей». был выброшен при попытке создать экземпляр. Дополнительные сведения о различных шаблонах, поддерживаемых во время разработки, см. на странице https://go.microsoft.com/fwlink/?linkid=851728`

Невозможно создать DbContext типа MyAppContext
Я не уверен, какую часть кода мне следует изменить, поскольку я все еще новичок и изучаю этот ASP.NET Core MVC. и Entity Framework Core.

Подробнее здесь: https://stackoverflow.com/questions/797 ... tity-error
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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