(1)EmptyResult:当用户有误操作或者是图片防盗链的时候,这个EmptyResult就可以派上用场,返回它可以让用户啥也看不到内容,通过访问浏览器端的源代码,发现是一个空内容;

 public ActionResult EmptyResult()  {  //空结果当然是空白了!  //至于你信不信, 我反正信了  return new EmptyResult();  }  

(2)Content:通过Content可以向浏览器返回一段字符串类型的文本结果,就相当于Response.Write("xxxx");一样的效果;

public ActionResult ContentResult()  {  return Content("Hi, 我是ContentResult结果");  }  

(3)File:通过File可以向浏览器返回一段文件流,主要用于输出一些图片或文件提供下载等;

public ActionResult FileResult()  {  var imgPath = Server.MapPath("~/demo.jpg");  return File(imgPath, "application/x-jpg", "demo.jpg");  }  

(4)HttpUnauthorizedResult:通过HttpUnauthorizedResult可以向浏览器输出指定的状态码和状态提示,如果不指定状态码,则默认为401无权访问;

public ActionResult HttpUnauthorizedResult()  {  //未验证时,跳转到Logon  return new HttpUnauthorizedResult();  }  

(5)Redirect与RedirectToAction:重定向与重定向到指定Action,我一般使用后者,主要是向浏览器发送HTTP 302的重定向响应;

public ActionResult RedirectToRouteResult()  {  return RedirectToRoute(new {  controller = "Hello", action = ""  });  }  

(6)JsonResult:通过Json可以轻松地将我们所需要返回的数据封装成为Json格式

  1.返回list

var res = new JsonResult();  //var value = "actionValue";  //db.ContextOptions.ProxyCreationEnabled = false;  var list = (from a in db.Articles  select new  {  name = a.ArtTitle,  yy = a.ArtPublishTime  }).Take(5);  //记得这里要select new 否则会报错:序列化类型 System.Data.Entity.DynamicProxies XXXXX 的对象时检测到循环引用。  //不select new 也行的加上这句 //db.ContextOptions.ProxyCreationEnabled = false;  res.Data = list;//返回列表  

2.返回单个对象

 var person = new { Name = "小明", Age = 22, Sex = "男" };  res.Data = person;//返回单个对象;

 3直接返回单个对象

public JsonResult GetPersonInfo() { var person = new { Name = "张三", Age = 22, Sex = "男" }; return Json(person,JsonRequestBehavior.AllowGet); }

  

res.JsonRequestBehavior = JsonRequestBehavior.AllowGet;//允许使用GET方式获取,否则用GET获取是会报错。

(7)JavaScript:可以通过JavaScriptResult向浏览器单独输出一段JS代码,不过由于主流浏览器都对此进行了安全检查,因此你的JS代码也许无法正常执行,反而是会以字符串的形式显示在页面中;

public ActionResult JavaScriptResult()  {  string js = "alert(\"Hi, I'm JavaScript.\");";  return JavaScript(js);  }  

(8)ActionResult  默认的返回值类型,通常返回一个View对象

  [ChildActionOnly]  public ActionResult ChildAction()  {  return PartialView();  }  

(9)HttpNotFoundResult

 public ActionResult HttpNotFoundResult()  {  return HttpNotFound("Page Not Found");  }  

转载于:https://www.cnblogs.com/wuyong09/p/5010422.html

Asp.net mvc中Controller的返回值相关推荐

  1. [转载]Asp.net MVC中Controller返回值类型

    Asp.net MVC中Controller返回值类型 在mvc中所有的controller类都必须使用"Controller"后缀来命名 并且对Action也有一定的要求: 必须 ...

  2. ASP.NET MVC中controller和view相互传值的方式

    ASP.NET MVC中Controller向view传值的方式: ViewBag.ViewData.TempData 单个值的传递 Json 匿名类型 ExpandoObject Cookie Vi ...

  3. 在asp.net mvc中使用PartialView返回部分HTML段

    问题链接: MVC怎样实现异步调用输出HTML页面 该问题是个常见的 case, 故写篇文章用于提示新人. 在asp.net mvc中返回View时使用的是ViewResult,它继承自ViewRes ...

  4. 【转载】ASP.NET MVC中Controller与View之间的数据传递总结

    在ASP.NET MVC中,经常会在Controller与View之间传递数据,因此,熟练.灵活的掌握这两层之间的数据传递方法就非常重要.本文从两个方面进行探讨: Ø Controller向View传 ...

  5. .NET MVC中controler层返回值常见类型

    所看到的Action都是return View();我们可以看作这个返回值用于解析一个aspx文件.而它的返回类型是ActionResult如 public ActionResult Index() ...

  6. Asp.net MVC 中Controller返回值类型ActionResult

    目录 1.返回ViewResult视图结果,将视图呈现给网页 2. 返回PartialViewResult部分视图结果,主要用于返回部分视图内容,在View/Shared目录下创建ViewUserCo ...

  7. mvc5 返回html,在asp.net mvc中使用PartialView返回部分HTML段

    该问题是个常见的 case, 故写篇文章用于提示新人. 相信聪明的你已经知道了它俩的区别了,没错 一个用于返回整体,另一个返回局部(部分). 假设我有这样一个需求,输入用户名,然后返回相关信息.之前的 ...

  8. .net mvc controler有哪些返回值

    public class MyController : Controller   {      // 必须返回ActionResult类型       public ActionResult Hell ...

  9. 使用ExposedObject对Asp.net MVC中匿名类型的JsonResult做单元测试

    返回JsonResult是MVC中的常见返回值类型,而且简单方便的方式是结合匿名类型一起使用. 比如: public ActionResult PreviewEmail() {--return Jso ...

最新文章

  1. LYNC2013部署系列PART2:后端部署
  2. vmstat 命令的使用
  3. 前端页面闪烁的问题解决方案
  4. 1.1 为什么是 ML 策略
  5. Linux操作系统使用基础05:Linux磁盘与文件系统管理
  6. webview是什么东西_做性能优化前需要考虑什么?
  7. 第二十四课、布局管理器(三)
  8. 软件工程基础作业 可行性与需求分析
  9. 虚幻引擎材质系统常用快捷键
  10. 该网页无法正常运作解决方法
  11. 微信每日早安推送,自定义推送名称,企业号推送非订阅号测试号,python源码,无需第三方多个网站注册、无第三方接口,无基础快速上不了手
  12. 微信小程序直播服务器是用的腾讯的,使用微信小程序和腾讯云实现直播功能
  13. R markdown的笔记02
  14. 微信小程序的开发制作_搭建_工具_模板_一键生成
  15. (转)Limboy:自学 iOS 开发的一些经验
  16. 使用git控制word版本
  17. 推荐几款渗透测试常用的脚本(记得收藏)
  18. tf.nn.pool()
  19. QT QSerialPort 编写串口通讯案例 设计一些基础的ui界面
  20. 处理 mysql error 1205

热门文章

  1. 【java】输入球的半径,求出其体积
  2. java中怎么把两个JTextfield中的数字相加的值放到另一个JTextfield?_如何将jtextfield中的值解析为整数并对其执行一些数学操作?...
  3. linux v4l2 示例程序,linux驱动由浅入深系列:camera驱动之二(基于高通平台的V4L2结构及代码分析)...
  4. 图像识别算法超低代码开发方案
  5. LightGBM图解理论+视频+安装方法+python代码
  6. python vector变量_用Python实现因子分析
  7. php 每天早上八点执行操作_php多进程单线程之phpcgi、phpfpm
  8. python决策树 value_直播案例 | 决策树、随机森林和 AdaBoost 的 Python 实现
  9. U盘安装服务器2008系统蓝屏,U盘安装系统造成蓝屏如何解决
  10. ObjC学习10-Foundation框架之内存管理