Получение исключения при подключении к службе WCF из приложения silverlight

Когда я пытаюсь подключиться к службе wcf из silverlight, я получаю следующее исключение, и здесь я также использую файлы crossdomain.xml и Clinetaccesspolicy.

Исключение: исключение CommunicationException было отменено кодом пользователя

Произошла ошибка при попытке сделать запрос к URI http: // localhost: 3500 / WCFService / Service.svc. Это могло произойти из-за попытки доступа к сервису в междоменном режиме без надлежащей междоменной политики или политики, которая не подходит для сервисов SOAP. Возможно, вам потребуется связаться с владельцем службы, чтобы опубликовать файл междоменной политики и убедиться, что он позволяет отправлять заголовки HTTP, связанные с SOAP. Эта ошибка также может быть вызвана использованием внутренних типов в прокси-сервере веб-службы без использования атрибута InternalsVisibleToAttribute. Пожалуйста, смотрите внутреннее исключение для более подробной информации.


person Prabhakaran    schedule 03.01.2011    source источник


Ответы (2)


Вам необходимо добавить междоменную политику xml в размещенное приложение.

См. междоменную политику < / а>

Это связано с тем, что Silverlight подобен клиентскому приложению и будет выполнять вызовы службы wcf на http://../somesite. В кроссдоменной политике xml указано, что он принимает вызовы из других доменов (например, XAP-файла Silverlight, который загружается в клиентском браузере).

person dhinesh    schedule 03.01.2011
comment
В моем приложении все нормально, как обсуждалось в блоге .. любая другая идея - person Prabhakaran; 03.01.2011
comment
Вы добавили crossdomainpolicy.xml в тот же каталог, что и файл .svc? - person dhinesh; 03.01.2011
comment
Запустите приложение в Firefox с расширением Firebug. Смотрите поступающие запросы. Если какой-либо запрос не выполняется для какого-либо файла междоменной политики, проверьте, к какому URL-адресу подключается клиент. Это место, где должен быть размещен файл политики. - person Chandermani; 03.01.2011

Возможно, вам потребуется реализовать поведение ошибки Silverlight тоже, чтобы увидеть фактическую ошибку

person vc 74    schedule 04.01.2011