Во-первых, я использую .Net 3.5 SP1. У меня есть несколько объектов, связанных следующим образом.
Engineer
имеет много Appointments
Appointment
имеет много Engineers
Timeslot
имеет много Appointments
Я обеспечивающей функциональность в моем слое доступа к данным, чтобы отменить/отменить изменения, внесенные в сущность. Я делаю это по телефону ...В EntityFramework как вы перезагружаете объекты во многих отношениях?
ObjectContext.Refresh(RefreshMode.StoreWins, Entity entity);
Это прекрасно работает для самого объекта и любого 1 на многих отношениях, как Timeslot
, но не возвращает никаких изменений в многие ко многим отношений.
Как woolld Я общаюсь с изменением отношений между многими и многими из предпочтительных в общей усадьбе, поскольку в настоящее время моя функция DiscardChanges()
находится в базовом классе?
Вы пробовали перегрузку Refresh, которая принимает коллекцию вместо одного объекта? – pdiddy
Это приведет к отмене изменений в коллекции объектов Entity, но мне нужно сделать восстановление исходной коллекции связанных объектов в моих отношениях многих и многих. По какой-то причине Refresh не делает этого. – TheDuke
У меня тоже такая же проблема. По моему мнению, стыдно, что Microsoft не включила метод Magic Refresh (rm RefreshMode) в ObjectContext, как и SaveChanges(), должен быть чем-то противоположным, например DiscardChanges для ВСЕХ отслеживаемых объектов. Если у вас есть какие-либо новости в ваших исследованиях, пожалуйста, проговорите, между тем вы также можете взглянуть на http://social.msdn.microsoft.com/forums/en-US/adodotnetentityframework/thread/c12bd8c8-231f-4dcc- a665-b048f7debbd7/ – Shimmy