У меня есть шаблон упражнения с названием, описанием и количеством подходов. Я хочу создать несколько объектов упражнения * из количества наборов. Например, у меня есть шаблон [{ "name": "Legs", "sets": 3 }, { "name" : "Arms", "sets" : 2 } в БД, я хочу сохранить [ {legs}, { ноги}, {legs}, {arms}, {arms}], но сохраняются только [{legs}, {arms}].
Фрагмент кода
Код: Выделить всё
var exercises = planTemplate.Exercises
.SelectMany(x => Enumerable.Repeat(new Exercise
{
Name = x.Name,
Description = x.Description
}, x.Sets))
.ToList() ?? new List();
var plan = new FitnessPlan
{
TemplateId = planTemplate.Id,
Archived = false,
User = user,
Name = planTemplate.Name,
Exercises = exercises,
};
await _context.FitnessPlans.AddAsync(plan);
await _context.SaveChangesAsync();
На прикрепленном экране все они сохранены с идентификатором упражнения 1024 или 1025, а не уникальны в диапазоне 1024–1028. В упражнениях по свойствам у меня есть 5 объектов без идентификаторов, но после сохранения изменений объектная структура дает им одинаковые идентификаторы для объектов с одинаковой структурой, хотя это разные объекты.
Подробнее здесь:
https://stackoverflow.com/questions/787 ... entityfram