2011-08-05 4 views
1

C#MVC3 system.web.helpers.json名前空間を使用して次のJSONを作成する際に問題があります。ここで私は形にしようとしていますされているもの:問題静的Jsonクラス(system.web.helpers.json)を使用してMVC3(asp.net)でJSONを作成するとき

{"success":true,"msg":"", "Data": [ { "Id":167 } ] } 

私は何をしようとしたことは、これは私も他のものの多くを試してみた

var x = Json(
      new {Id = result.SponsorListId}); 

     return Json(new 
         { 
          success, 
          msg = success ? "" : "sponsorListResult Passed Into Update as null", 
          Data = new List<Json>() {x} 

         }, JsonRequestBehavior.DenyGet); 

(なし成功を収めて)ですが、すべてのリストにはポイントません私の失敗。

ありがとうございました。

答えて

1

基本的に、すべてのJson()メソッドは、送信するオブジェクトをシリアル化します。リストを送信すると、あなたが意図していないJsonResponseが送信されます。あなたがしなければならないのは次のようなものです:

return Json(new 
        { 
         success, 
         msg = success ? "" : "sponsorListResult Passed Into Update as null", 
         Data = new []{ new { Id: result.SponsorListId } } 
        }, JsonRequestBehavior.DenyGet); 

あなたがしたいところにシリアル化する必要があります。

+0

hmm。構文:Data = new [] {{Id:result.SponsorListId}}はコンパイルされません。私にそれをどう修正するかは明らかではありません。 –

+0

'new [] {new {Id:result.SponsorListId}}'第2の 'new'キーワードに気づく –

+0

申し訳ありませんが、修正されました。 SOエディタには、これらの問題を解決するためにC#コンパイラが必要です。 。 。 –

関連する問題