zoukankan      html  css  js  c++  java
  • MVC基础之控制器常见返回类型

    大家好,我是大成子,今天写一遍MVC控制器常见的返回的类型,总结一下过往的知识。

    IActionResult

    IActionResult就不多说了,它是所有Result的父类。下面说说几种常见的。

    ViewResult

    用于输出视图内容:

     

    ContentResult

    输出简单文本内容:

     
     

    JsonResult

    输出json字符串

     

    跳转控制之重定向

    Redirect:重定向页面跳转

     

    RedirectToAction:跳转到指定的action(可以是非本控制器)

     

    RedirectToRoute:使用指定的路由值跳转到指定的路由

     

    文件输出

    按指定的文件路径来输出文件:

    注意:用此方法,没有涉及到文件流,不需要读取硬盘上的文件,所以直接使用虚拟路径,即相对路径

     

    测试结果如下:

     

    使用字节数组输出文件:

     

    测试如下:

     

    此为在线浏览方式,如若需要下载的方式,则在返回方法加上第三个参数,下载文件的命名:

     
     

    使用流方式输出文件:

     

    总结:

    1.本篇文章示例了MVC/API中返回的比较常见的几种类型,但不管是ViewResult还是ContentResult他们所有的类型的基类都是IActionResult,在写的时候可以不必写出具体的返回类型,直接写IActionResult。

    2.也可以写平常我们所见的int,string,或者void亦或者其他类型

    3.重定向。

            Redirect(页面路径)

            RedirectToAction(重定向到指定的控制器、动作方法)

            RedirectToRoute(使用指定的路由值跳转)

    4.重点是最后文件上传下载中的下载知识点,也就是文件资源的输出。

    (1)直接使用项目中的路径资源,通过路径读取文件,输出文件。注意:需要使用虚拟(相对)路径。

    (2)使用字节数组,输出文件资源。需要使用物理(绝对)路径。

    (3)使用流,输出文件资源。需要使用物理(绝对路径)。

    微信公众号:dotNET学习天地

    好了,今天的学习就到这里结束了,有需要交流的请联系小编,共同学习进步。关于文件资源上传的,我们以后的学习再讲解。MVC和API原理差不多,返回类型也差不多,所以上述讲解的MVC中的全部内容在API中也同样适用。

          代码地址:https://github.com/huguangcheng/_NET-Core_Study/tree/master/FileUpAndDown

  • 相关阅读:
    C#中enum的总结(转载)
    jQuery之获取select选中的值
    event.preventDefault方法的使用
    C++概述
    C++ 名字空间
    C++初步学习
    C++回调机制实现 signal-slot
    转: 关于UI开发(总结一些技术和一些论坛牛人讨论)
    Duilib 入门教程: 怎么创建一个自定义的窗口
    SQL Server 数据库设计规范
  • 原文地址:https://www.cnblogs.com/xingxingzhou/p/11992330.html
Copyright © 2011-2022 走看看