2012-03-07 17 views
1

Json出力でフィールド名の名前を変更する方法 クラス名cookとフィールド "time1"を別のものにします。私は、JSONの結果を返すasp.net mvcコントローラクラスを使用しています。このようなものについては...asp.net mvc jsonのシリアル化属性

public ActionResult GetCook() 
{ 
    var cook = new Cook(); 
    return Json(new 
    { 
     atime = cook.time1, 
     anothertime = cook.time2, 
     yetanothertime = cook.time3 
    }); 
} 

答えて

2

。その後、すべてのプロパティとその値を辞書の中に入れる独自のJSONクラスを作成します。各プロパティのキーは、カスタム属性で指定する名前になります。

これはちょっと怪しいと思うかもしれませんが、このようなことが好きだと思えば、私はコード例を挙げることができます。がんばろう!

+0

私は特殊文字を持ついくつかの名前を持っています。私はそれをプロパティ名として持つことはできません。 – pili

+0

あなたがより良い答えをしたいのであれば、あなたが得ようとしていることについてもっと具体的にしたいかもしれません。結局は、独自のJSONを書き出すだけで済むかもしれません。フォーマットはかなりシンプルです(http://www.json.org/)。 – Brian

0

あなたは、カスタム属性を記述し、(自分の属性クラスはIMetadataAwareを実装していることを確認してください)ViewData.ModelMetadataてその値にアクセスすることができますどのような

public class Cook 
    { 
     public string time1; 
     public string time2; 
     public string time3; 

    }