2010-07-13 5 views
0

Я создал приложение Silverlight, используя шаблон бизнес-приложения silverlight.Не удалось получить доступ к EntityCollection на клиенте silverlight

Я добавил модель данных сущности ADO.NET и создал ее с нуля в дизайнере. Затем я создал базу данных из модели. Модель имеет «проектную» сущность и «клиентскую» сущность с отношением «многие ко многим».

Затем я добавил службу домена в мой .web-проект и выбрал объекты из моей модели. В сгенерированных методах службы, на стороне сервера, у меня есть доступ к свойству «Client.Projects», а также к свойству «Project.Clients», но у меня нет доступа к этому на стороне клиента, в моем Silverlight заявление.

Если я перехожу к отношениям «один ко многим» между клиентом и проектом, я получаю доступ к свойству на клиенте silverlight.

Что делать, чтобы получить доступ к свойствам на клиенте silverlight?

Любая помощь будет наиболее ценится

-Morten

ответ

0

В многие ко-многим, есть шанс, что вы будете иметь «круговой» ссылочных объектов. Другими словами, один объект имеет свойство другого объекта, который, в свою очередь, имеет ссылку на свойство обратно на исходный объект.

Циркулярные ссылки не могут быть сериализованы через веб-службу или службу WCF, поэтому вам, вероятно, придется сломать отношения «многие-ко-многим» в вашей модели, поэтому возможна сериализация.

+0

Привет, Стив, спасибо, что помогли мне решить мою проблему! Из класса, сгенерированного конструктором в проекте .web, я вижу, что как класс «Клиент», так и класс «Проект» отмечены [DataContractAttribute (IsReference = true)] Не будет ли это решение проблема с объектами с круглыми ссылками? Объекты с круглыми ссылками были проблемой, которую я имел некоторое время назад при создании службы WCF, и это решило мою проблему. – Morten