2017-06-21 2 views
0

コンテキスト「PLOC」と奇妙な例外メッセージ文字列

。検証エラーの実際の理由を取得しようとすると、私は例外メッセージを取り出します。

 foreach (var field in modelState) 
     { 
      details.AddRange(field.Value.Errors.Select(error => new Error 
      { 
       Target = field.Key.ToCamelCase(), 
       Message = error.ErrorMessage, 
       InnerError = new Error 
       { 
        Message = error.Exception.Message 
       } 
      })); 
     } 

問題がerror.Exception.Messageである:

は、私は、次のコードを持っています。

私は要求

 { 
      "assisfdgfsdgnedBy": true 
     } 

これは、メッセージの値で送信すると!:要求ペイロードに」

ynECcパラメータ 'assisfdgfsdgnedByを' です'Count'演算の有効なパラメータではありません。Ploc Ploc! "私はリクエストを送信すると

{ 
    "assisfdgfsdgnedBy": truedsg 
} 

メッセージの値は

ある "!ieOni!無効なJSON。予期しないトークン 'truedsg'。PLOC!"

時折、私も "PLOC PLOC PLOを!" など

として語尾を持っています

「!何か!」の最初の部分です。各エラー・タイプごとに変更されますが、同じエラーの要求では一貫しています。

質問

これらの値がどのようなものがあり、なぜ彼らは例外メッセージであり、そしてどのように私は簡単に他の「通常の」例外メッセージに影響を与えることなく、それらを削除しますか?

答えて

0

私はこれらの値を取り除くための解決策に到達しましたが、何が原因であるかまだ分かりません。次のように

コードは次のとおりです。

public static string CleanPlocPloc(string message) 
{ 
    message = Regex.Replace(message, "^!.+?!", ""); 
    message = Regex.Replace(message, @"\.(\s(Ploc|Plo))*\s!$", "."); 

    return message; 
}