WCF EntLib検証-変更をデフォルトのSOAPフォルトのテキストの理由

StackOverflow https://stackoverflow.com/questions/1164602

  •  19-09-2019
  •  | 
  •  

質問

私が使っているの 企業図書館の検証用ブロック 私は、WCFサービスです。すべてが、と。純消費者のもあります。 FaultException<ValidationFault> 例外を集人間が読む事業。しかしするものではありませんでしたnon-.Net 消費者、特にされる方は是非ご参加くださいすみの原SOAPメッセージ。の石鹸の理由書は必ず"クールもこの断層かを指定しないで理由です。"こんもり その理由で特定の <Detail> 要素の例で示したとおりの断層メッセージです。

はありまでを何でもこなせます。テキスト"クールもこの断層かを指定しないで理由です。"何かをより良い"見ValidationFault詳細"?

<s:Body>
   <s:Fault>
      <s:Code>
         <s:Value>s:Sender</s:Value>
      </s:Code>
      <s:Reason>
         <s:Text xml:lang="en-GB">The creator of this fault did not specify a Reason.</s:Text>
      </s:Reason>
      <s:Detail>
         <ValidationFault xmlns="http://www.microsoft.com/practices/EnterpriseLibrary/2007/01/wcf/validation" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <Details xmlns:b="http://schemas.datacontract.org/2004/07/Microsoft.Practices.EnterpriseLibrary.Validation.Integration.WCF">
               <b:ValidationDetail>
                  <b:Key i:nil="true"/>
                  <b:Message>Value Validator</b:Message>
                  <b:Tag>request</b:Tag>
               </b:ValidationDetail>
            </Details>
         </ValidationFault>
      </s:Detail>
   </s:Fault>
</s:Body>
役に立ちましたか?

解決

EntLibの人々はこの1つを考えていなかったように

まあ、それはそうです。私はEntLibコードの変化があることが必要であるところに注意して問題を提起しました自分のCodePlexサイトのでは。私は、これがまた EntLibContrib のプロジェクトの一環として、誰でも行うことができると思いますが、彼らはまだエンタープライズにあるように見えます図書館3.1、私は4.1を使用していに対します。

私は、誰もが必死だ場合、解決策はEntLibのソースコードをダウンロードし、(BeforeCall名前空間内)ValidationParameterInspectorクラスのMicrosoft.Practices.EnterpriseLibrary.Validation.Integration.WCFの方法を変更するだろうと思います。 FaultExceptionが作成される場所です。このコンストラクタのオーバーロードはFaultReasonを指定することができます。

他のヒント

どのようにお、WCFサービスを生成しこれらの断層の

見てるときに FaultException クラス、WCFが数多くできる方法を構築しその一つを含む一 コンストラクタ できるように指定FaultReasonの石鹸。

Marc

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top