在mvc的每个Action中,都可以指定一种返回页面的类型,可以是ActionResult,这表示返回的页面为View或者是一个PartialView,

在以Aspx为页面引擎时,PartialView被称为分部视图,扩展名为ASCX,与webform的用户控件一样,是页面的一部分,而使用Razor为页面引擎时,partialView扩展名还是cshtml

第一种情况,在Partialview中进行表单提示操作后,需要返回一个PartialView来填充原来的partialView的内容,这种情况需要action返回值类型必须是 PartialviewResult,返回代码必须是Partialview

  public PartialViewResult Other()
{
return PartialView("Some",entity);//返回指定的分部视图
}

第二种情况:
在Partialview视图中提交表单,然后使整个页面进行一个跳转,这里不能使用response.redirect,而必须用js的location.href,前者会在本Partial位置进行跳转

  public PartialViewResult UserLogOn(UserLogOnModel entity)
{
if (ModelState.IsValid)
{ Response.Write("<script>location.href='home/index';</script>");//在ascx中跳到指定页,需要用JS方法 }
return PartialView();
}

第三种情况:在Partialview中只是一个链接,没有提交动作,只是将Partialview的部分进行重定向,这里用response.redirect

  public PartialViewResult UserLogOn(UserLogOnModel entity)
{
if (ModelState.IsValid)
{
Response.Redirect("/home/index");
}
return PartialView();
}

注意:对于Partialview的action,如果只是返回视图,而不是返回json或者其他格式的对象,最好使用PartialviewResult进行返回,而不要使用ActionResult

MVC小系列(十)【PartialView中的页面重定向】的更多相关文章

  1. PartialView中的页面重定向

    在MVC的每个action中,都可以指定一种返回页面的类型,可以是ActionResult,这表示返回的页面为view或者是一个PartialView,前台是一个全整页面,后台是页面的一部分. 在以A ...

  2. MVC小系列(七)【分部视图中的POST】

    MVC小系列(七)[分部视图中的POST] 在PartialView中进行表单提交的作用:1 这个表单不止一个地方用到,2 可能涉及到异步的提交问题 这两种情况都可能需要把表单建立在分部视图上, 使用 ...

  3. C#编译器优化那点事 c# 如果一个对象的值为null,那么它调用扩展方法时为甚么不报错 webAPI 控制器(Controller)太多怎么办? .NET MVC项目设置包含Areas中的页面为默认启动页 (五)Net Core使用静态文件 学习ASP.NET Core Razor 编程系列八——并发处理

    C#编译器优化那点事   使用C#编写程序,给最终用户的程序,是需要使用release配置的,而release配置和debug配置,有一个关键区别,就是release的编译器优化默认是启用的.优化代码 ...

  4. MVC小系列(八)【改变Areas的FindView顺序】

    MVC小系列(八)[改变Areas的FindView顺序] 一般项目比较大的话,会根据模块建立Areas,这样结构清晰,也有利于路由的部署, 1 Areas下有自己的_LayOut模板,而如果希望所有 ...

  5. WebForm 中的页面重定向和传值(转自 MSDN)

    ——原文地址:https://msdn.microsoft.com/zh-cn/library/6c3yckfw(v=vs.100).aspx      在开发 ASP.NET 网站时,您经常需要从一 ...

  6. MVC小系列(十二)【RenderAction和RenderPartial区别】

    二者作用:RenderAction:渲染分部视图到页面上,要求提供Action和控制器名称RenderPartial:渲染分部视图到页面上,要求提供分部视图的名称,即路径,如果是在当前控制下或者sha ...

  7. MVC小系列(二十二)【MVC的Session超时,导致的跳转问题】

    由于mvc内部跳转机制的问题,它只在当前的action所渲染的view上进行跳转,如果希望在当前页面跳,需要将mvc方法改为js方法: filterContext.Result = new Redir ...

  8. MVC小系列(十八)【给checkbox和radiobutton添加集合的重载】

    mvc对DropDownListFor的重载很多,但对checkbox和radiobutton没有对集合的重载 所以该讲主要针对集合的扩展: #region 复选框扩展 /// <summary ...

  9. MVC小系列(十六)【在控制器级别或具体Action级别上动态设定模板页(Layout)】

    方法就是使用:ActionFilterAttribute它的几个方法:OnActionExecuted,OnActionExecuting,OnResultExecuted和OnResultExecu ...

随机推荐

  1. CodeForcesGym 100753B Bounty Hunter II 二分图最小路径覆盖

    关键在建图 题解:http://www.cnblogs.com/crackpotisback/p/4856159.html 学习:http://www.cnblogs.com/jackiesteed/ ...

  2. JZ2440开发笔记(4)——设置静态IP

    1. 配置静态ip地址 $sudo vim /etc/network/interfaces 原有内容只有如下两行: auto lo iface lo inet loopback 向末尾追加以下内容: ...

  3. Clean Code – Chapter 4: Comments

    “Don’t comment bad code—rewrite it.”——Brian W.Kernighan and P.J.Plaugher The proper use of comments ...

  4. 使用yum和iso镜像离线升级RedHat系统

    创建一个用于挂载iso镜像的目录.由于这个目录不能在挂载时自动创建,所以需要以root身份先创建一个目录.命令: mkdir mount_dir 以root身份把iso镜像挂载到上一步创建的目录上.命 ...

  5. HW1.2

    public class Solution { public static void main(String[] args) { System.out.println("Welcome to ...

  6. HW4.10

    public class Solution { public static void main(String[] args) { int count = 0; for(int i = 100; i & ...

  7. HW2.24

    import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...

  8. HDOJ-ACM1006(JAVA)

    题意:输入一个角度degree,求出一天中时针分针秒针之间的角度大于这个角度degree的时间占一天总时间的比例 因此输入是0-120度, 输出比例,保留三位小数,-1为终止 暂时没想出来如何做这道题 ...

  9. aix 扩展文件系统

    今天发现公司的oracle测试 数据库不能启动,检查警告日志日志,提示归档空间不足,不能归档,于是扩展文件系统: 1.检查rootvg卷组的剩余空间[p2704u]:[/dsg/oracle11]$ ...

  10. PL/SQL基础

    打印  hi set serveroutput on   --打开输出开关 declare           --说明部分(变量说明,光标申明或者例外说明) begin           --程序 ...