0

正常に実行されているSilverlightアプリケーションがあります。

「ブラウザ外」を使用しようとしていますが、いくつかの問題が発生します。まず、自分のサービスにアクセスできません。

単純な「testString」サービス呼び出しでも、「タイムアウト例外」が発生します。私はローカルホストにいます。

したがって、クロスドメインポリシーに問題があるのではないかと思います。

これを入れてみました

    <?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>

crossdomain.xmlファイル内

私もこれを入れようとしました:

    <?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>

しかし、まさか、まだTimeOut例外が発生しており、サーバー側ではブレークポイントに到達していません。

それで、私は何を間違えたのでしょうか?

これらのファイルを正確にどこに置くべきですか?

「サイト」が1つしかないローカルIISサーバーがあるため、このサイトには「アプリケーション」があり、アプリケーションにはサービスを含むフォルダーがあります。これをどのレベルに配置する必要がありますか?

どうもありがとうございます

編集:実際、これがこのクロスポリシーの問題なのか、それともブラウザ外モードの場合はWindows認証モード(NTLM)を使用できないためなのかはわかりません。

4

1 に答える 1

0

私はついに問題が何であるかを見つけました!

それはシルバーライトの問題でした:

実際、私は App.xaml.cs の "ApplicationLoaded" イベントで WCF 呼び出しを行っていました。メソッドを受け取ったら、RootVisual を設定していました。

また、Out-of-Browser モードの場合、RootVisual が設定される前に WCF 呼び出しを行うことはできないようです。

今、私は RootVisual を設定しています。RootVisual が "Loaded" になったら、リクエストを実行しています。そしてそれは動作します!

于 2011-03-29T06:22:24.870 に答える