1、return View();

返回值

类型:System.Web.Mvc.ViewResult
将视图呈现给响应的 View() 结果。
注释

View() 类的此方法重载将返回一个具有空 ViewName 属性的 ViewResult 对象。 如果你正在编写控制器操作的单元测试,则需为那些不采用字符串视图名称的单元测试考虑到空 ViewName 属性。

在运行时,如果 ViewName 属性为空,则将使用当前操作名称取代 ViewName 属性。

2、return View(object model);   

参数

model
类型:System.Object
视图呈现的模型。

返回值

类型:System.Web.Mvc.ViewResult
视图结果。

注释

 

View() 方法的此重载将返回一个具有空 ViewName 属性的 ViewResult 对象。 如果你正在编写控制器操作的单元测试,则需为那些不采用字符串视图名称的单元测试考虑到空 ViewName 属性。

3、return View(string viewName);

参数

viewName
类型:System.String
为响应呈现的视图的名称。

返回值

类型:System.Web.Mvc.ViewResult
视图结果。

注释

 

在执行此方法所准备的结果对象时,ASP.NET MVC 框架会将该对象写入响应。

4、return View(IView view);

参数

view
类型:System.Web.Mvc.IView
为响应呈现的视图。

返回值

类型:System.Web.Mvc.ViewResult
视图结果。

注释

 

在执行此方法所准备的结果对象时,ASP.NET MVC 框架会将该对象写入响应。

5 return View(string viewName, object model);

参数

viewName
类型:System.String
为响应呈现的视图。
model
类型:System.Object
视图呈现的模型。

返回值

类型:System.Web.Mvc.ViewResult
视图结果。

注释

 

在执行此方法所准备的结果对象时,ASP.NET MVC 框架会将该对象写入响应。

6 return View(string viewName, string masterName);

参数

viewName
类型:System.String
为响应呈现的视图的名称。
masterName
类型:System.String
在呈现视图时要使用的母版页或模板的名称。

返回值

类型:System.Web.Mvc.ViewResult
视图结果。

注释

 

在执行此方法所准备的结果对象时,ASP.NET MVC 框架会将该对象写入响应。

7 return View(IView view, object model); 

参数

view
类型:System.Web.Mvc.IView
为响应呈现的视图。
model
类型:System.Object
视图呈现的模型。

返回值

类型:System.Web.Mvc.ViewResult
视图结果。

注释

 

在执行此方法所准备的结果对象时,ASP.NET MVC 框架会将该对象写入响应

8return View(string viewName, string masterName, object model);

参数

viewName
类型:System.String
为响应呈现的视图的名称。
masterName
类型:System.String
在呈现视图时要使用的母版页或模板的名称。
model
类型:System.Object
视图呈现的模型。

返回值

类型:System.Web.Mvc.ViewResult
视图结果。

注释

 

在执行此方法所准备的结果对象时,ASP.NET MVC 框架会将该对象写入响应。

 
显示: 继承 保护
  名称 说明
MasterName 获取在呈现视图时要使用的母版视图(如母版页或模板)的名称。
Model 获取视图数据模型。 (从 ViewResultBase 继承。)
TempData 获取或设置此结果的 TempDataDictionary 对象。 (从 ViewResultBase 继承。)
View 获取或设置呈现给响应的 IView 对象。 (从 ViewResultBase 继承。)
ViewBag 获取视图包。 (从 ViewResultBase 继承。)
ViewData 获取或设置此结果的视图数据 ViewDataDictionary 对象。 (从 ViewResultBase 继承。)
ViewEngineCollection 获取或设置与此结果关联的视图引擎的集合。 (从 ViewResultBase 继承。)
ViewName 获取或设置要呈现的视图的名称。 (从 ViewResultBase 继承。)

  

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

      public ActionResult Index()
{
return View();
}

除了View()之外那我们这里还能用于返回什么值呢?

一、ascx页面

场景:要返回代码片断,比如Ajax返回一个子页

我们先新建一个Action

        public ActionResult Ascx()
{
return PartialView();
}

我们下面再建一个View,仍然是在Action中点右键,AddView。

注意图中勾选。

于是新建了一个ascx页,我们将之少做改写一下

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>

<div>
得到一个DIV
</div>

运行,得到页面

二、返回文本

除了上述情况,有时我们还会仅返回一段文本。

此时我们可以使用以下Action形式:

        public ActionResult Text(){
return Content("这是一段文本");
}

三、返回Json

有时我们在调用Ajax时还会要求返回对象为Json序列化的结果,如:

        public ActionResult ShowJson()
{
var m = new EiceIndexModel
{
Name = "邹健",
Sex = true
};
return Json(m);
}

返回文本:

{"Name":"邹健","Sex":true}

四、输出JS文件

大多时候js文件都是静态的,但有时js文件可能也要动态生成这时我们可以这样输出

        public ActionResult Js()
{
return JavaScript("var x=0;");
}

我们访问之,得到一个正常页面但其Content-Type:application/x-javascript; charset=utf-8

五、页面跳转

1.跳转到Url

        public ActionResult rdurl()
{
return Redirect("http://www.baidu.com");
}

2.跳转到Action

        public ActionResult rdaction()
{
return RedirectToAction("Index","Eice");
}

3.跳转到Routing规则

        public ActionResult rdrouting()
{
return RedirectToRoute("Default",//Route名
new{
Controller = "Eice",
Action = "Index"
});
}

六、显示文件

        public ActionResult fn()
{
return File(
"/Content/site.css"//文件路径
, "text/css"//文件类型
);
}

return view 详解 MVC的更多相关文章

  1. return view详解

    1.return View(); 返回值 类型:System.Web.Mvc.ViewResult将视图呈现给响应的 View() 结果. 注释 View() 类的此方法重载将返回一个具有空 View ...

  2. return view详解(转载)

    1.return View(); 返回值 类型:System.Web.Mvc.ViewResult将视图呈现给响应的 View() 结果. 注释 View() 类的此方法重载将返回一个具有空 View ...

  3. Android 自定义 View 详解

    View 的绘制系列文章: Android View 绘制流程之 DecorView 与 ViewRootImpl Android View 的绘制流程之 Measure 过程详解 (一) Andro ...

  4. Django 框架篇(四) : 视图(view)详解 以及 路由系统(url)

    |--Django的View(视图) |-- CBV和FBV: |-- 给视图增加装饰器: |-- request对象: |-- response对象: |-- Django的路由系统(url): | ...

  5. 深入了解View实现原理以及自定义View详解

    下面几篇文章对View的原理讲的非常详细. Android LayoutInflater原理分析,带你一步步深入了解View(一) Android视图绘制流程完全解析,带你一步步深入了解View(二) ...

  6. AngularJS开发指南11:AngularJS的model,controller,view详解

    model model这个词在AngularJS中,既可以表示一个(比如,一个叫做phones的model,它的值是一个包含多个phone的数组)对象,也可以表示应用中的整个数据模型,这取决于我们所讨 ...

  7. 详解MVC设计模式

    1 MVC介绍 众所周知MVC不是设计模式,是一个比设计模式更大一点的模式,称作设计模式不合理,应该说MVC它是一种软件开发架构模式,它包含了很多的设计模式,最为密切是以下三种:Observer (观 ...

  8. 面试之路(3)-详解MVC,MVP,MVVM

    一:mvc mvc结构: 视图(View):用户界面. 控制器(Controller):业务逻辑 模型(Model):数据保存 mvc各部分的通信方式 mvc互动模式 通过 View 接受指令,传递给 ...

  9. django性能优化缓存view详解

    缓存提升性能: 1.通常的view会去数据库端执行相关的查询然后交由template渲染.数据库访问通常就是性能的瓶颈所在. 2.由于许多数据要很久才会变一次.两次连续的数据库访问通常返回的数据是一样 ...

随机推荐

  1. matlab 求解线性规划问题

    线性规划 LP(Linear programming,线性规划)是一种优化方法,在优化问题中目标函数和约束函数均为向量变量的线性函数,LP问题可描述为: minf(x):待最小化的目标函数(如果问题本 ...

  2. Eclipse使用技巧总结(六)

    四十.增量查找 Ctrl + J : Ctrl + Shift + J: 四十一.快速跳到某行 Ctrl + L 四十二.快速比较不同 Window-->Preference___查找quick ...

  3. C#中的并发编程知识

      = 导航   顶部 线程 Task async/await IAsyncResult Parallel 异步的回调   顶部 线程 Task async/await IAsyncResult Pa ...

  4. Android中使用JUnit测试

    package com.meritit.lottery.test; import java.util.List; import android.test.AndroidTestCase; import ...

  5. react 父组件向子组件传递函数

    这段时间一直在使用react,由于这react是单向数据绑定,总感觉有点不适用,毕竟之前一直都在使用angular,但学习还是要继续,做了一个迭代的项目,都差点忘记要总结一下这个react了,现在可以 ...

  6. python 左旋转字符串

    比较简单的一道题 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果.对于一个给定的字符序列S,请你把其循环左移K位后的序列输出.例如,字符序列S= ...

  7. 细数 Windows Phone 灭亡的七宗罪(过程很详细,评论很精彩,但主要还是因为太慢了,生态跟不上,太贪了,厂商不愿意推广)

    曾梦想仗剑走天涯,看一看世界的繁华 年少的心有些轻狂,如今你四海为家 曾让你心疼的姑娘,如今已悄然无踪影 犹记得上大学攒钱买了第一台智能手机Lumia 520时,下载的第一首歌曲<曾经的你> ...

  8. ASP.NET Core 新增用户 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 新增用户 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 新增用户 上一章节我们实现了一个注册表单,但也留了一些东西还没完成, ...

  9. 异步Servlet的理解与实践

    AsyncContext理解 Servlet 3.0(JSR315)定义了Servlet/Filter的异步特性规范. 怎么理解"异步Servlet/Filter"及其使用情景? ...

  10. 如何清除XP的网络共享密码

    一.利用NET命令 我们知道在Windows XP中提供了“net user”命令,该命令可以添加.修改用户账户信息,其语法格式为: net user [UserName [Password | *] ...