Я работаю с отключенными объектами POCO.
Когда я сохраняю один объект, он отлично работает!
Проблема начинается, когда я хочу сохранить связанные объекты.
Например:
Извлечение объекта из слоя данных:
using (MyContext ctx = new MyContext ())
{
return ctx.Users.First();
}
Этот объект возвращается на бизнес-уровень и там я добавляю несколько дочерних записей, см. Ниже (просто для иллюстрации):
objectUser.Permissions.Add(new Permission());
objectUser.Permissions.Add(new Permission());
Полномочия - это переход к Полномочиям пользователя.
А затем я хочу сохранить этот объектUser обратно в базу данных, затем я делаю:
using (MyContext ctx = new MyContext ())
{
ctx.Users.Attach(objectUser);
ctx.ObjectStateManager.ChangeObjectState(objectUser, System.Data.EntityState.Modified);
ctx.SaveChanges();
}
Нов первой строке при использовании я получаю сообщение об ошибке: «Объект с таким же ключом уже существует в ObjectStateManager. ObjectStateManager не может отслеживать несколько объектов с одним и тем же ключом».
Кто-нибудь знает, если я делаючто-то не так?
Я просто хочу сохранить объекты и связанные с ними объекты.
Спасибо за помощь.
Луис Густаво
Я 'мы пытались отделить сущность, но в этом случаеe Я теряю все связанные объекты, и мне нужны эти связанные объекты, чтобы я мог добавлять / удалять.
После этого я хотел сохранить их обратно в базу данных.
Я делаю глупостьархитектура ??
Луис Густаво