簡體   English   中英

ASP.NET MVC:構建Json ActionResult的最佳C#方法

[英]ASP.NET MVC: Best C# method of building a Json ActionResult

過去也曾提出類似的問題,但現在看起來有點過時了。 我試圖獲得目前關於在ASP.NET MVC中構造JsonResult的最佳方法的一致意見。 此問題的上下文是使用.NET 4 / 4.5和MVC 4中提供的最新方法

這是我多年來遇到的一些流行方法:

var json1 = new { foo = 123, bar = "abc" };

var json2 = new Dictionary<string, object>{ { "foo", 123 }, { "bar", "abc" } };

dynamic json3;
json3.foo = 123;
json3.bar = "abc";

還請解釋您首選方法的優缺點

我個人用這個:

public class MyViewModel
{
    public int Foo { get; set; }
    public string Bar { get; set; }
}

接着:

public ActionResult Foo()
{
    var model = new MyViewModel
    {
        Foo = 123,
        Bar = "abc"
    };
    return Json(model, JsonRequestBehavior.AllowGet);
}

優點:

  • 強大的打字
  • 沒有魔法字符串
  • 重構友好
  • 單元測試友好
  • 代碼很容易轉換為新的Web Api控制器動作調用,保持前面的點是真的:

     public class ValuesController: ApiController { public MyViewModel Foo() { return new MyViewModel { Foo = 123, Bar = "abc" }; } } 

缺點:尚未遇到過。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM