0

Silverlight 4 WCF RIA アプリケーションのパフォーマンスを改善しようとしています。これはイントラネットでのみ使用されるため、デフォルトのバイナリ HTTP バインディングから Net.TCP バインディングに切り替えると、パフォーマンスが少し向上する可能性があると考えました。

ただし、単純な概念実証アプリケーションを実行するのに苦労しています。私は持っている:

  • 接続証明アプリを Cassini から IIS に切り替えました (7)
  • IIS に適切なバインディングと有効なプロトコルを追加しました
  • IIS ルートに clientaccesspolicy.xml ファイルを追加しました

さて、次のようなコンテキストを作成すると:

var context = new DomainService1(
new Uri(
    "net.tcp://localhost:4502/BusinessApplication/BusinessApplication2.Web/ClientBin/BusinessApplication2-Web-DomainService1.svc"));

... 次のエラーが表示されます。

The provided URI scheme 'net.tcp' is invalid; expected 'http'. Parameter name: via

今、私は困惑しています。私が知る限り、問題は、自動生成された WCF RIA コードによって作成されるクライアントに、Net.TCP エンドポイントを使用するように指示する必要があることですが、その方法がわかりません。

Net.TCP 経由で WCF サービスを利用する方法を説明しているブログ記事はたくさん見つかりましたが、WCF RIA について話している記事は 1 つも見つかりませんでした。また、公式のドキュメントも見つかりませんでした。これらの説明にはすべて、WCF RIA アプリには不適切と思われる web.config ファイルへの変更が含まれます。

これを構成する方法を説明するか、ドキュメントを教えてください。

4

1 に答える 1

0

WCF RIA サービスは、Net.TCP バインディングでは使用できない HttpContext に依存しています。

パフォーマンスの問題について、もう少し詳しく説明していただけますか? ボトルネックのクエリ/操作は何ですか? データのサイズ (エンティティ サイズ x エンティティ数) は? パフォーマンス要件と現在のパフォーマンスの差は?

おそらく、Net.TCP を使用しない他の方法があるでしょうか?

ありがとう。

ディネッシュ

(WCF RIA サービス プログラム マネージャー)

于 2010-08-18T19:05:05.393 に答える