Проблемы сериализации WCF POCO с IsReference = true - PullRequest
1 голос
/ 08 ноября 2011

У меня проблема с сериализацией коллекции объектов POCO из EF через WCF с IsReference = true.У объектов есть пара различных навигационных свойств, которые полностью заполняются на стороне сервера.Но на стороне клиента для некоторых свойств nav сериализуется только одна копия свойства nav.Например:

Возвращается список, и у каждого автомобиля есть свойство nav Owner и свойство nav Maker.Предположим, я запрашиваю список автомобилей, принадлежащих «Джо» (который только покупает Форд), и 5 автомобилей возвращаются.Первая машина будет иметь свойство Навигация пользователя, указывающее на Джо, но автомобили со 2 по 5 имеют нулевое свойство Навигация пользователя.Но свойство Maker nav для всех 5 автомобилей указывает на Ford.У всех автомобилей правильный идентификатор внешнего ключа, а на стороне сервера все автомобили имеют все свойства nav, заполненные

. Установив IsReference = true, я думаю, что сериализатор видит, что Джо уже находится в карте объектов,он не включает это для автомобилей 2 - 5. Но он не делает это для всех навигационных свойств (например, car Maker).

Кто-нибудь знает, что происходит?

...