我發現自己需要從控制器操作中將各種JSON結果返回給客戶端。我已經創建了ContentResult類型的靜態「輔助」方法。我希望能夠在多個項目中重用這些助手,所以我已經在他們自己的課堂上創建了這些助手,並且不久之後我會將它們移到自己的程序集中。ASP.NET MVC結果返回助手
這是我的問題:這些返回幫助器中的一些需要訪問控制器上下文,所以我創建了作爲控制器上的擴展方法。我喜歡Html Helper方法是HtmlHelper類的擴展方法,但我找不到類似於View類的Html屬性的合適的控制器屬性,所以我只是擴展了控制器。 以下是返回幫助程序的代碼。我想知道是否有更好的方法來做到這一點。
public static ContentResult AJAXRedirect(this Controller cont, string action,
string controller, object routeValues)
{
string url = cont.Url.Action(action, controller, routeValues);
string json = "{{\"redirect\": \"{0}\" }}";
json = string.Format(json, url);
return new ContentResult
{
Content = json,
ContentType = "text/x-json",
ContentEncoding = Encoding.UTF8
};
}
使用JsonResult而不是ContentResult – 2009-11-23 14:29:46