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. Dictionary实现(收藏的)

    源文献:https://www.cnblogs.com/InCerry/p/10325290.html 对于C#中的Dictionary类相信大家都不陌生,这是一个Collection(集合)类型,可 ...

  2. Android 平台下Cordova 调用Activity插件开发

    首先建立一个包名为package com.JiajiaCy.CallActivity; package com.JajaCy.CallActivity; import org.apache.cordo ...

  3. NP、NP-完全、NP-难问题

    What are the differences between NP, NP-Complete and NP-Hard? 0. 基本定义 判定问题(decision problem):一个答案是是或 ...

  4. rabbitmq集群 + Mirror Queue + 使用C#

    搭建高可用的rabbitmq集群 + Mirror Queue + 使用C#驱动连接 我们知道rabbitmq是一个专业的MQ产品,而且它也是一个严格遵守AMQP协议的玩意,但是要想骚,一定需要拿出高 ...

  5. readline库的使用

    接口十分简单,readline和addhistory: #include <stdlib.h> #include <stdio.h> #include <unistd.h ...

  6. malloc()与calloc差异

    Both the malloc() and the calloc() functions are used to allocate dynamic memory. Each operates slig ...

  7. eclise配置tomcat出现服务Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4 and Java EE 5 Web modules

    当部署项目Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, 1.5 and Java EE 5 Web modules错;解决方案,如下面: 空 ...

  8. 新秀翻译(一个)——Java在继承和组合

    阅读英文的程序猿的能力,这是非常重要的.过去的几年中一直在学习英语,今天心血来潮,在网上找什么鲍文简要翻译. 普通级,能力有限,看官还请大家多多指点. 译文: 本文将会举例说明Java中继承和组合的概 ...

  9. 安德鲁斯Toast它们的定义和防止重复显示器

    Toast安卓系统,当用户错误或功能运行完成,提示,要求用户,它不集中,并且将在一定时间内消失.然而,在用户继续误(如登录,password错)当次,将有多个Toast创建.系统会把这些toast放进 ...

  10. CheckBox IsHitTestVisible

    <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto"></Colu ...