私は作成したValidationFaultを持つAJAX対応WCFサービス(この動作ではenableWebScriptを使用しています)を持っています。ここでAJAX対応のWCFサービスからJSONのフォルトを返す方法は?
サービスです:
[ServiceContract]
public interface ICoreWCF
{
/// <summary>
/// Saves the Customer.
/// </summary>
[OperationContract]
[WebInvoke(BodyStyle = WebMessageBodyStyle.WrappedRequest)]
[FaultContract(typeof(ValidationFault))]
void Customer_Save(Customer customer);
}
ここのせいです:
[DataContract]
public class ValidationFault
{
[DataMember(Name = "success")]
public bool Success { get; set; }
[DataMember(Name = "msg")]
public string ValidationMessage { get; set; }
[DataMember(Name = "errors")]
public Dictionary<string, string> Errors { get; set; }
}
私は戻って、クライアントのJavaScriptにこの障害を送りたいと思います。 問題は、私のカスタムフォルトのDataMembersが無視され、一般的な例外が返されることです。
どのようにエラーコレクションをクライアントに送信できますか?
は、私はすでにそれが障害に例外を変換するために、アプリケーションブロックを例外処理を使用し、次にIErrorHandlerは結果の障害をシリアライズするように、thisに似て自分のIErrorHandlerを書いてみました。しかし、WebScriptingEnablingBehaviorのJsonErrorHandlerは、結果のMessageオブジェクトをうまく扱っていないようです。
ありがとうございました。
見て[ここ] [1]既に回答しました。 [1]:http://stackoverflow.com/questions/1272877/returning-error-details-from-ajax-enabled-wcf-service –
ありがとう@ブライアン。私はこの質問を見ましたが、残念ながら私はこの答えで説明されているのと同じ問題が発生しています:http://stackoverflow.com/questions/1272877/returning-error-details-from-ajax-enabled-wcf-service/3705135#3705135 –