The last days I’m spending some time learning Silverlight. And as a newbie, I’m making all the beginner mistakes (and learning a lot from it).
One of the obvious things you need to do if your Silverlight application is calling out to external webservices is to enable cross-domain calls.
Most of the time you get an error message like this:
“An error occurred while trying to make a request to URI ‘http://localhost:1378/MyFirstSilverlightService.svc’. This could be due to attempting to access a service in a cross-domain way without a proper cross-domain policy in place, or a policy that is unsuitable for SOAP services. You may need to contact the owner of the service to publish a ……...”
To solve this you have to add a clientaccesspolicy.xml file in the root folder where your services are hosted. Insert the following lines:
1: <?xml version="1.0" encoding="utf-8"?>
2: <access-policy>
3: <cross-domain-access>
4: <policy>
5: <allow-from http-request-headers="*">
6: <domain uri="*"/>
7: </allow-from>
8: <grant-to>
9: <resource path="/" include-subpaths="true"/>
10: </grant-to>
11: </policy>
12: </cross-domain-access>
13: </access-policy>