Asp.net mvc 2 是否直接从控制器打印到web?
我有一个返回cpu状态的控制器函数:Asp.net mvc 2 是否直接从控制器打印到web?,asp.net-mvc-2,Asp.net Mvc 2,我有一个返回cpu状态的控制器函数: public ActionResult GetStats() { Random rand = new Random(); ViewData["cpu_temp"] = rand.Next(0, 100) + "%"; return View(); } 从一个角度来看,它100%有效。Bu tI想知道我是否可以缩短流程,然后做一些类似的事
public ActionResult GetStats()
{
Random rand = new Random();
ViewData["cpu_temp"] = rand.Next(0, 100) + "%";
return View();
}
从一个角度来看,它100%有效。Bu tI想知道我是否可以缩短流程,然后做一些类似的事情:
public ActionResult GetStats()
{
Random rand = new Random();
something.writeline(rand.Next(0, 100) + "%");
}
这样我就可以创建控制器,而不必关心简单输出的视图:D
修复,在Jamie Dixon的提示下,我提出了以下解决方案:
public ActionResult GetStats()
{
Random rand = new Random();
ViewData["cpu_temp"] = rand.Next(0, 100) + "%";
return Json(ViewData, JsonRequestBehavior.AllowGet);
}
按预期工作:D这完全取决于您要查看数据的位置 如果要通过网页在web浏览器中查看数据,则需要返回视图 如果您只想查看数据,可以使用
Debug.WriteLine(mystring);
或者,您可以将其以用户可以下载的任何格式(JSON、XML、文本文件)发送到浏览器,而不需要查看
这里的关键点是,如果您希望用户在浏览器中查看信息的方式可能会显示给他们,那么您需要使用视图
更新
要返回JSON对象,只需返回JSON(对象)
这样做会更容易:
public ActionResult GetStats()
{
Random rand = new Random();
return Content(rand.Next(0, 100) + "%");
}
JSON实际上是我的目标,我可以通过跳过视图文件将其发送到浏览器吗?怎么做DI已经更新了我的答案,包括一种返回JSON数据的简单方法。
public ActionResult GetStats()
{
Random rand = new Random();
return Content(rand.Next(0, 100) + "%");
}