Из-за чего прокси-объекты POCO иногда создаются только в Entity Framework 4 - PullRequest
1 голос
/ 15 июня 2010

Я настроил свои POCO и пометил их общедоступные свойства как виртуальные, и большую часть времени я успешно получаю прокси (95%), но случайно я получаю, что EF возвращает некоторые прокси и некоторые не-прокси.

Переработка пула приложений, когда это произойдет, исправит этот экземпляр ошибки и уйдет на некоторое время.Тогда это снова произойдет в каком-то другом случайном (кажется) месте.

Что может вызвать такое поведение?

alt text http://www.freeimagehosting.net/uploads/36c95af3c7.jpg

Спасибо, Кохан

1 Ответ

0 голосов
/ 15 июня 2010

Решил (у меня есть привычка почти сдаваться, писать здесь, а потом решать)

В любом случае, когда я добавлял новый Вопрос, я использовал что-то вроде var q = new Question(), тогда оно сохранялось как не-прокси. В конце концов, я выяснил это, создав новый вопрос об ObjectContext, например, var q = ObjectContext.CreateObject<Question>(); делает его прокси-сервером и работает просто отлично.

Надеюсь, это кому-нибудь поможет,
Cheers,
Кохан.

Полезный источник: http://blogs.msdn.com/b/adonet/archive/2009/06/10/poco-in-the-entity-framework-part-3-change-tracking-with-poco.aspx (читать комментарии)

...