2017-01-19 16 views
1

ここでは、「WarnIfAnyAmountInDebtLongerThan30Days」などの長いプロパティ名を持つPOCOを作成するのが一般的です。また、1MBのJsonをキャッシュ/転送する結果となる1k個のアイテムがあるリストもあります...
その巨大なプロパティ名をシリアル化するのではなく、JSON.Netに "P1"(例えば)として圧縮し、後でデシリアライズするための内部ディクショナリを作成する方法があります...Json.Net - "圧縮"をシリアル化しますか?

これは可能ですか?または私はBを計画するために行くと減少したプロパティ名を持つ別のPOCOを作成し、バック前後に行くマッパーを使用する必要がない...

EDIT 1:なぜなら私
エイリアスを作成するには、私が欲しいものではありませんそのプロパティ名に応じて何千ものjavascriptやその他の動く部分があります...私はそれをキャッシュするためにシリアライズするときだけ "圧縮"したいと思います!

+0

質問はどのようにプロパティ名を変更することができ、[新規の –

+2

可能な重複のように聞こえます?](http://stackoverflow.com/questions/8796618/how-can-i-change-property-names-when-serializing-with-json-net) – HimBromBeere

+1

各シリアライザについては、エイリアスを名前を出力形式で示す直列化されるメンバ – HimBromBeere

答えて

0

デシリアライズ側の使用状況によって異なります。あなたが転送されるデータの量を削減することができバイナリJSONであるBSONを...試みることができるJson.netでシリアライズするとき

http://www.newtonsoft.com/json/help/html/SerializeToBson.htm

+0

私はしました...最終結果は実際に最悪です! – Leonardo

+2

BSonはプロパティ名を置き換えません。 –

+0

もちろん、それは少しだけ負荷を減らすことを望んでいました。 –

関連する問題