это украдет мое здравомыслие. Я прошел почти все, что нашел в сети, и не сделал ни одного шага вперед. Разочарование не достаточно сильное, чтобы описать это сообщение об ошибке, которое появляется, независимо от того, что я делаю.
Но один за другим.
У меня 64-битный сервер W2008 с немецкой версией VS 2008 SP1, Silverlight Tools 3.0
Я хочу использовать WCF-сервис из приложения Silverlight. И, как и многие люди, я получаю это очень разочаровывающее неописуемое исключение связи в конце вызова.
Я создал новую WCF-службу, назвал ее конечной точкой и установил ее привязку к basicHttpBinding. Я добавил атрибут
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
классу Service1 и строке
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
для system.serviceModel в App.config
Я оставил все как есть и успешно протестировал сервис через WCF-клиента. Затем я опубликовал его в своем местном IIS7 на http://localhost/WCFTest
В своем приложении Silverlight я добавил службу в ссылку на службу, используя http://europa.therestofmydomain/WCFTest/WcfTest.Service1.svc
Я добавил следующий код для клиента:
using OSMDeepEarthExample.ServiceReference1;
...
Service1Client s1 = new Service1Client();
s1.GetDataCompleted += new System.EventHandler<GetDataCompletedEventArgs>(s1_GetDataCompleted);
s1.GetDataAsync(20);
void s1_GetDataCompleted(object sender, GetDataCompletedEventArgs e)
{
CountFetchedData.Text = e.Result;
}
Я добавил clientaccesspolicy.xml И crossdomain.xml в webroot (C: \ inetpub \ wwwroot)
clientaccesspolicy.xml:
<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from>
<domain uri="*"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
crossdomain.xml:
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*" />
<allow-http-request-headers-from domain="*" headers="SOAPAction" />
</cross-domain-policy>
Я перезапустил IIS. Дважды. Часто.
Я установил Помощник по веб-разработке, чтобы, возможно, получить более значимую информацию о том, ЧТО не так. Но это приводит к краху IE.
У меня нет идей. И скоро начну проявлять агрессию по отношению к моему оборудованию. Пожалуйста, помогите моему оборудованию!
Как заметил Джон, я забыл полное сообщение об ошибке, вот оно:
* 1042. Ден Бесситцер де Денстес, Венден, Дейм Энд Домененбергбергфайнд Ричтлинидатеи вердеффенчен и дас Сенден фон, посвященный SOAP, без посредников. Inneren Ausnahme.
Короче говоря, он говорит, что может отсутствовать междоменное правило.