2011-07-25 3 views

答えて

1

メッセージ契約とメッセージヘッダーは、ほとんどの人が使う必要のない高度な概念です。これらは主に、特定の形式(ヘッダ内のいくつかのパラメータ)のデータを必要とする第三者サービスと通信する必要のある相互運用性のシナリオで使用されます。メッセージヘッダにいくつかのパラメータを渡すための

その他の可能なシナリオ:

    (ヘッダは常にバッファリングされているので)あなたには、いくつかを使用したいので、もし簡単に、WCFでのメッセージの検査官や他の拡張ポイントにアクセスすることができますヘッダ
  • いくつかの検証(例えば、何らかの認証の決定)をする人の中で、あなたはそのヘッダにパラメータを持たせたいかもしれません。
  • @Vasileが述べたように、ストリーム転送をしたい場合は、 (ストリーミングされた)ボディを読み込み/消費する前に、操作に何らかの追加情報を伝えるために使用される
0

MessageContract & MessageHeaderは、DataContract & DataMemberよりもメッセージの下位レベルの制御を提供します。また、webHttpBindingまたはbasicHttpBindingを使用している場合は、SOAPヘッダーを作成する方法も提供されます。 WCFサービスでストリーミング機能を使用している場合は、ストリーム自体のほかにデータを渡す唯一の方法として、MessageHeaderを使用する方法があります。
メッセージ契約の詳細はこちらMSDN article

+0

申し訳ありません申し訳ありませんが、このコンセプトの周りに頭を抱えています。 Message Bodyではなく、Message HeaderにOperationとTransactionDateTimeを送信する使用例は何ですか?この情報をメッセージ本文に送信することには何らかの制限がありますか? –

関連する問題