与えられたクラス
`` `c#
パブリッククラスMyClass {
パブリック文字列MyField {get; set;}
パブリック文字列MyOtherField {get; set;}
}
the generated JSON will be
``` javascript
{"MyField": "field value", "MyOtherField": "other field value"}
ただし、ワイヤのもう一方の端にあるREST APIは、キーが小文字であると予想される別の命名規則に従います。
{"myField": "field value", "myOtherField": "other field value"}
カスタムシリアライザーに頼らずにこれを達成する簡単な方法はありますか? これは非常に小さな変更であるため、できればどこかの構成スイッチのみになります。
プロパティのJsonProperty
属性を使用して、シリアル化時に別の名前を指定してください。
public class MyClass {
public string MyField {get;set;}
[JsonProperty("myOtherField")]
public string MyOtherField {get;set;}
}
必要なもののように聞こえますが、RestSharpでこの属性を見つけることができません。 他のdllをインポートする必要がありますか? RestSharpのMonoTouchバージョンを使用しています。
編集:Newtonsoft.Json MonoTouchライブラリを追加して属性を追加しましたが、それでも大文字のキーが生成されていました。
メーリングリストでこれについて尋ねたところ、これはRestSharpではなくJSON.NETに固有のものであるという応答がありました。 その場合は、この号を機能リクエストとして公開したいと思います。
機能リクエストが開かれましたか?
そうではありませんでした。 この機能が必要な場合は、RestSharpを使用すると、カスタムのデ/シリアライザーを使用できるため、今はそれを使用する必要があります。
最も参考になるコメント
プロパティの
JsonProperty
属性を使用して、シリアル化時に別の名前を指定してください。