Добрый день!
Есть сущность Event которая может быть связана с множеством Tag через поле Tags. Один Tag может быть связан с множеством Event.
При сохранении Event, в котором указаны тэги, которые уже были ранее созданы - происходит ошибка:
SqlException: Violation of PRIMARY KEY constraint 'PK_Tags'. Cannot insert duplicate key in object 'dbo.Tags'. The duplicate key value is (asdasdffads). The statement has been terminated.
Что не правильно я делаю и как это исправить?
Использую EF Core 5
Сущности
public class Event
{
[Key]
public long EventId {get;set;]
public virtual ICollection<Tag> Tags { get; set; }
}
public class Tag
{
[Key]
public string Title {get;set;}
public virtual ICollection<Event> Events { get; set; }
}
FluentAPI
modelBuilder.Entity<Event>()
.HasMany(e => e.Tags)
.WithMany(e => e.Events);
Создание/Сохранение
Event eventDT = _mapper.Map<Event>(eventVM);
eventDT.CreatedDate = DateTime.Now;
eventDT.CreatorId = _httpContextAccessor.GetUsername();
_db.Events.Add(eventDT);
_db.SaveChanges();