3

WebScriptServiceHostFactory と WebServiceHostFactory をいつ使用するか、2 つの違いを誰かが説明できますか? 使用時にエンドポイントで特定のデフォルトの動作をセットアップすることを理解しているので、そうする必要はありません。それ以外の違いは、WebScriptServiceHostFactory の既定値が JSON メッセージであるのに対して、WebServiceHostFactory の既定値が XML (soap メッセージ) であることだけですか? WebGet と WebInvoke を使用して、両方で動作しますか、それとも許可しませんか? また、UriTemplates を使用して REST サービスを構築できますか?

4

1 に答える 1

4

これWebScriptServiceHostFactoryは、ASP.NET AJAXフレームワークによって使用されるサービスを定義するためにほぼ排他的に使用されます(JSクライアントにサービスの呼び出しに使用できる「プロキシ」を提供します)。汎用のWCFWeb(REST)プログラミングを行っている場合は、を使用する必要がありWebServiceHostFactoryます。

いくつかの違い:

  • おっしゃるように、デフォルトの応答形式は異なります(WScriptSHFのJSON、WSHFのXML)
  • UriTemplatesは、WScriptSHFではなくWSHFで完全にサポートされています
  • WebGetとWebInvokeは両方で機能しますが、WScriptSHFでサポートされているボディスタイルはWrappedRequest
  • WScriptSHFによって作成されたエンドポイントへの呼び出しへの応答は、JSONオブジェクトにラップされます。操作への応答(JSON)がであった[1,2,3]場合、エンドポイントはそれをとして返します{"d":[1,2,3]}

<asp:ScriptManager>他にもあるかもしれませんが、基本的には、ASP.NET AJAXフレームワーク(を使用)とWSHFを他のすべてに使用している場合にのみWScriptSHFを使用することをお勧めします。

于 2013-03-01T18:56:49.980 に答える