2011-03-25 4 views
0

J'ai une application Silverlight, qui fonctionne bien. J'essaie d'utiliser "Out of browser" et je rencontre plusieurs problèmes. Premièrement, je ne peux pas avoir accès à mes services.politiques inter-domaines dans Silverlight sur le navigateur

Je reçois une "exception Timeout", même lors d'un simple appel de service "testString". Je suis sur localhost. Donc je pense qu'il y a peut-être un problème avec les politiques interdomaines.

J'ai essayé de mettre ce

<?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="*" /> 
</cross-domain-policy> 

dans un fichier crossdomain.xml

J'ai essayé de mettre cela aussi:

<?xml version="1.0" encoding="utf-8"?> 
<access-policy> 
    <cross-domain-access> 
    <policy> 
     <allow-from http-request-headers="*"> 
     <domain uri="*"/> 
     </allow-from> 
     <grant-to> 
     <resource path="/" include-subpaths="true"/> 
     </grant-to> 
    </policy> 
    </cross-domain-access> 
</access-policy> 

Mais aucune façon, je suis toujours obtenir un Exception TimeOut, et côté serveur, mon point d'arrêt n'a pas été atteint.

Alors, que pouvais-je faire de mal?

Où dois-je placer ces fichiers? Parce que j'ai un serveur IIS local, qui n'a qu'un seul "site", ce site a une "application", et mon application a un dossier qui contient des services, alors à quel niveau dois-je mettre cela?

Merci beaucoup

EDIT: En fait, je ne sais pas si cela est ce problème croisés politiques ou si elle est parce que quand il est en mode Hors du navigateur, il ne peut pas utiliser Windows Mode d'authentification (NTLM)

+0

Avez-vous regardé le trafic en utilisant Fiddler? Cela vous dira si vous obtenez la bonne politique de domaine croisé sur le client. –

+0

En fait, si je l'ai sorti du navigateur, je ne vois aucun trafic pour cette application dans le violoneur – J4N

+0

Vous avez réglé Fiddler à tout le trafic, non? Pas seulement le navigateur Web? –

Répondre

0

J'ai finalement trouvé quel était le problème!

Il était une question silverlight:

En fait je faisais l'appel WCF en cas App.xaml.cs « ApplicationLoaded », et une fois que je reçois la méthode, je mettais mon RootVisual.

Et il semble que lorsque nous sommes en mode Out-of-Browser, vous ne pouvez pas effectuer d'appel WCF avant que le RootVisual ait été défini.

Maintenant, je définis le RootVisual, et quand le RootVisual est "Loaded", je fais ma demande. et il fonctionne!

Questions connexes