Проблема со ссылкой на .Web проект в проекте Silverlight - PullRequest
2 голосов
/ 03 мая 2011

Я пытаюсь сослаться на мою службу домена, следуя этой документации.

Следующие два объявления работают нормально

xmlns:riaControls = "clr-namespace:System.Windows.Controls; 
   assembly=System.Windows.Controls.DomainServices"

и

xmlns:data = "clr-namespace:System.Windows.Controls;
   assembly=System.Windows.Controls.Data"

но у меня проблемы с этим

xmlns:domain="clr-namespace:SNMPApplication.Web"

Эта ошибка появляется даже после перестройки всего решения:

Неопределенное пространство имен CLR.URI 'clr-namespace' относится к пространству имен, которое не включено в сборку.

Я пытался добавить ссылку на свой проект Silverlight, но я получаю эту ошибку

В решение можно добавить только ссылки на проекты к другим проектам Silverlight.

У кого-нибудь есть представление о проблеме?: /

Заранее большое спасибо.

Ответы [ 3 ]

1 голос
/ 03 мая 2011

Способ добавления ссылки на RIA DomainService не осуществляется через традиционный диалог Добавить ссылку.Вы делаете это через настройки проекта.В приложении Silverlight перейдите к настройкам проекта, в частности вкладке «Silverlight».На этой вкладке будет «Ссылка службы WCF RIA».Вы сможете выбрать свой проект, который содержит DomainService.

После выбора проекта Visual Studio сгенерирует код для вашего приложения Silverlight.Это находится в папке Generated_Code (которая не видна в проекте, хотя вы можете увидеть ее в папке).Здесь будет ваш код, на который вам нужно сослаться.

0 голосов
/ 03 мая 2011

Если вам действительно необходим доступ к веб-проекту из вашего проекта SNMPApplication, то я думаю, что вам понадобится любой из ответов на этот вопрос: Как получить доступ к классу веб-приложения в приложении silverlight

0 голосов
/ 03 мая 2011

На самом деле вы не создаете ссылку на ваш веб-проект, когда делаете это, она разрешает ее во время компиляции для создания сгенерированных файлов g.cs (я подозреваю). Это одна из тех волшебных вещей, которые работают в фоновом режиме. (Я думаю, что он хранится в файле проекта, а вы задаете его в свойствах проекта -> вкладка silverlight под ссылкой WCF Ria Services).

Пожалуйста, проверьте следующее:

Ваш SNMPApplication.Web находится в том же решении, что и ваш проект Silverlight (SNMPApplication). и что ваша ссылка совпадает с пространством имен вашего класса DomainService, которое вы добавили в свой класс web.Project (Возможно, оно находится в подпапке, и поэтому оно не работает,

Если вы еще не создали доменную службу, добавьте ее, поскольку именно она используется службами silverlight и ria для соединения между вашей моделью сущности и silverlight. (Посмотрите здесь из Добавление класса DomainService

xmlns: domain = "clr-namespace: SNMPApplication.Web"

...