return view 详解 MVC
1、return View();
返回值
类型:System.Web.Mvc.ViewResult
将视图呈现给响应的 View() 结果。
在运行时,如果 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);
返回值
类型:System.Web.Mvc.ViewResult
视图结果。
在执行此方法所准备的结果对象时,ASP.NET MVC 框架会将该对象写入响应。
6 return View(string viewName, string masterName);
返回值
类型:System.Web.Mvc.ViewResult
视图结果。
在执行此方法所准备的结果对象时,ASP.NET MVC 框架会将该对象写入响应。
返回值
类型: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的更多相关文章
- return view详解
1.return View(); 返回值 类型:System.Web.Mvc.ViewResult将视图呈现给响应的 View() 结果. 注释 View() 类的此方法重载将返回一个具有空 View ...
- return view详解(转载)
1.return View(); 返回值 类型:System.Web.Mvc.ViewResult将视图呈现给响应的 View() 结果. 注释 View() 类的此方法重载将返回一个具有空 View ...
- Android 自定义 View 详解
View 的绘制系列文章: Android View 绘制流程之 DecorView 与 ViewRootImpl Android View 的绘制流程之 Measure 过程详解 (一) Andro ...
- Django 框架篇(四) : 视图(view)详解 以及 路由系统(url)
|--Django的View(视图) |-- CBV和FBV: |-- 给视图增加装饰器: |-- request对象: |-- response对象: |-- Django的路由系统(url): | ...
- 深入了解View实现原理以及自定义View详解
下面几篇文章对View的原理讲的非常详细. Android LayoutInflater原理分析,带你一步步深入了解View(一) Android视图绘制流程完全解析,带你一步步深入了解View(二) ...
- AngularJS开发指南11:AngularJS的model,controller,view详解
model model这个词在AngularJS中,既可以表示一个(比如,一个叫做phones的model,它的值是一个包含多个phone的数组)对象,也可以表示应用中的整个数据模型,这取决于我们所讨 ...
- 详解MVC设计模式
1 MVC介绍 众所周知MVC不是设计模式,是一个比设计模式更大一点的模式,称作设计模式不合理,应该说MVC它是一种软件开发架构模式,它包含了很多的设计模式,最为密切是以下三种:Observer (观 ...
- 面试之路(3)-详解MVC,MVP,MVVM
一:mvc mvc结构: 视图(View):用户界面. 控制器(Controller):业务逻辑 模型(Model):数据保存 mvc各部分的通信方式 mvc互动模式 通过 View 接受指令,传递给 ...
- django性能优化缓存view详解
缓存提升性能: 1.通常的view会去数据库端执行相关的查询然后交由template渲染.数据库访问通常就是性能的瓶颈所在. 2.由于许多数据要很久才会变一次.两次连续的数据库访问通常返回的数据是一样 ...
随机推荐
- Android Studio教程-创建第一个项目Hello World
前段时间打开Android studio 在build过程中总会出现以下错误 Error:Execution failed for task ':app:preDebugAndroidTestBuil ...
- 6LoWPAN - Transmission of IPv6 Packets over IEEE 802.15.4 Networks
6LoWPAN covered topics include the following: Frame format for transmission of IPv6 packets Method ...
- 解决 ubuntu 14.04.1 下一个sublime text3 3065 中国输入的问题
你看今天 sublime text3 我以前有没有3059 的 它有支持3065该. 因此,为了支持subl 对中国输入法的实现 ,下面的操作步骤把我的记录供大家使用 有一个完整的教程: htt ...
- Windows多线程系列
来自CSDN - 秒杀多线程系列.覆盖了Windows系统的线程同步机制.对于理解各种锁以及多线程典型场景很有帮助.
- wpf Storyboard 不存在可解析名称“ ”的适用名称领域 No applicable name scope exists to resolve the name
原文:wpf Storyboard 不存在可解析名称“ ”的适用名称领域 No applicable name scope exists to resolve the name 写了一个 Storyb ...
- React路由配置
React路由简单配置 //入口文件index.js import React from 'react'; import ReactDom from 'react-dom'; import { Rou ...
- asp .net 文件浏览功能
达到的目的是,发布站点后,在站点某个目录下的图片文件可以通过url访问 步骤 1.新建一个网站 注意,不要建立在需要较高访问权限的地方,不要建立空网站 如果是需要较高访问权限的目录,而IIS本身账号的 ...
- VisualStateManager
管理控件状态和管理控件状态的转换逻辑 <Window.Resources> <Style TargetType="Button" x:Key="Anim ...
- JS实时检测文本框内容长度
通过js代码实时监测,文本框内容的变化以及长度,下图是一个实际使用场景. HTML部分: <input id="Text1" type="text" on ...
- Android 调试桥(adb)是多种用途的工具
Android 调试桥 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态. 可以通过下列几种方法加入adb: 在设备上运行shell命令 通过端口转发来管理 ...
