У меня есть .net API, использующий EF Core со следующими объектами следующие объекты
Моя цель - отправить User
id
в API и на основе этого id
приложение должно извлечь name
из таблицы User
и вставить его в таблицу Name
UserRepository.cs
public int GetNameById(int userId)
{
var result = _context.User.Where(u => u.Id == userId).Select(u => new { u.Name }).FirstOrDefault();
...
}
NameRepository.cs
public void AddName(Name name)
{
_context.Name.Add(name);
}
// _context.SaveChanges() later
В контроллере я вызываю их соответствующие службы, а они называют свои соответствующие репозитории.Я сделал поиск и вставку отдельно, чтобы я мог использовать этот метод в будущем.Ядро EF генерирует два запроса, я хотел все это в одном из соображений производительности, как я могу это сделать?Они уже используют один и тот же контекст
Короче говоря, я хочу методы, которые можно использовать повторно и запускать все в одном запросе.(В моем реальном проекте сущности совершенно разные, я изменил их, чтобы было легче понять мою проблему)