Лучший способ обработки отношений «многие ко многим» с использованием подхода EF db-first в .NET6.C#

Место общения программистов C#
Anonymous
Лучший способ обработки отношений «многие ко многим» с использованием подхода EF db-first в .NET6.

Сообщение Anonymous »

У меня есть таблица запросов (сгенерированная EF):

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

public class Request
{
public int Id { get; set; }
public string Name {get; set; }
public virtual ICollection AttendeeRequests { get; } = new List();
}
У меня также есть таблица для участников (сгенерировано EF):

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

public class Attendee
{
public int Id { get; set;}
public string Name { get; set; }
public virtual ICollection AttendeeRequests { get; } = new List();
}
У меня также есть для них таблица «многие-ко-многим» (сгенерирована EF):

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

public class AttendeeRequest
{
public int Id { get; set; }
public int RequestId { get; set;}
public int AttendeeId { get; set; }
}
Моя задача — вставить запрос в базу данных относительно участника.
Я создаю транзакцию, вставляю запрос в базу данных, затем вставляю участников в базу данных. базу данных, то для их связи я делаю это:

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

foreach (var attendee in attendees)
{
var manyToManyRelationRecord = new AttendeeRequest()
{
AttendeeId = attendee.Id,
RequestId = requestToInsert.Id //this is the already inserted request, so it is going to have an ID
};
//Save changes code here
}
Это работает, но мне кажется, что это «ручное управление». Не может ли EF автоматически обработать эту вставку? Как бы вы решили эту проблему?

Подробнее здесь: https://stackoverflow.com/questions/787 ... ch-in-net6

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