Я не могу добавить объект в ObjectContext, хотя я убежден, что он не присоединен и не связан с другим контекстом
Я использую EF 4 с объектами POCO.
Если я попытаюсь
_currentContext.ObjectStateManager.GetObjectStateEntry(entityIn)
Тогда я получу ошибку
The ObjectStateManager does not contain an ObjectStateEntry with a reference to an object of type 'System.Data.Entity.DynamicProxies.OrderItem_7D361CB49D75AA90681B4BA3F924139ECB0FC1426E38E90C7B884A4E9CD777DF'.
Достаточно справедливо, что ее там нет.Поэтому, если я попытаюсь прикрепить его
_currentContext.AttachTo("OrderItems", entityIn)
, тогда я получу
An entity object cannot be referenced by multiple instances of IEntityChangeTracker.
Как я могу получить обе ошибки.Разве они не противоречат ??Как я могу прикрепить его к контексту?
Редактировать
В приложении есть только один контекст.Шаблон
- Все вызовы через объекты репозитория.
- Объекты получают свой objectcontext из фабричного класса.
- Этот фабричный класс либо создает контекст, либо получает контекст из объекта запроса, таким образом гарантируя, что для жизненного цикла страницы используется только один контекст
В любой момент, если вы берете два экземпляраобъект контекста хеш-код для каждого из них одинаков.