0

次の .NET オブジェクトを使用して逆シリアル化のためにクライアントがサーバーに {f: "1,00"} を渡すと、変換エラーが発生しました。フレームワークはそれを有効な10 進数値として認識できません。クライアントは ' id-id ' ロケールにあるため、「1,00」は実際には 10 進数で「1.00」です。

問題を回避するために正しい数値フォーマッタを使用するようにフレームワークに指示できますか? ありがとう。

using System.Runtime.Serialization;

[DataContract]
public class EntryParameter
{
    [DataMember(Name = "f")]
    public decimal Foo { get; set; }
4

1 に答える 1

1

このソリューションを試して、10 進数が特定の形式として認識されるようにすることもできます

value = "1,00";
   style = NumberStyles.AllowDecimalPoint;
   culture = CultureInfo.CreateSpecificCulture("fr-FR");
   if (Decimal.TryParse(value, style, culture, out number))
   {
       decimal topaas=number;
   }
于 2012-08-18T04:18:10.673 に答える