介绍如何定义

其实它和普通视图没有多大区别,只是创建分部视图的时候视图里没有任何内容,你需要什么标签你自己加。第二就是分部视图不会执行_ViewStart.cshtml中的内容)

控制器

PartialViewDeomController控制器

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.Mvc;
  6. namespace MvcApp.Controllers
  7. {
  8. public class PartialViewDeomController : Controller
  9. {
  10. //
  11. // 分部视图的作用一般用于嵌到如一些正常的视图中去。(类似与自定义控件)相当于: Server.Execute(string path)
  12. public ActionResult PartialIndex()
  13. {
  14. //View()方法返回的视图默认都会去执行_ViewStart.cshtml中的内容
  15. //return View();
  16. //分部视图不会去执行_ViewStart.cshtml中的内容(分部视图以PartialView()返回)
  17. return PartialView();
  18. }
  19. }
  20. }

PartialIndex 视图

  1. <!--注意,创建分部视图后,视图里是没有任何东西的。自己需要什么标签,就加什么标签。这个视图的用法就是到时候嵌套到一些以View()返回的正常视图中去-->
  2. <select id="dp1">
  3. <option value="0">湖南</option>
  4. <option value="1">广东</option>
  5. <option value="0">上海</option>>
  6. </select>
  7. <select id="dp2">
  8. <option value="0">纽约</option>
  9. <option value="1">洛杉矶</option>
  10. <option value="0">华盛顿</option>>
  11. </select>

使用介绍(我们发现它与普通视图是差不多的)

PartialViewDeomController控制器
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.Mvc;
  6. namespace MvcApp.Controllers
  7. {
  8. using MvcApp.Models;
  9. public class PartialViewDeomController : Controller
  10. {
  11. //
  12. // 分部视图的作用一般用于嵌到如一些正常的视图中去。(类似与自定义控件)相当于: Server.Execute(string path)
  13. public ActionResult PartialIndex()
  14. {
  15. var list = new List<T_UserInfo>()
  16. {
  17. new T_UserInfo(){Id=1,UserName="无盐海",Name="凡斌"},
  18. new T_UserInfo(){Id=1,UserName="阿宝",Name="周晶"},
  19. };
  20. //分部视图不会去执行_ViewStart.cshtml中的内容(分部视图以PartialView()返回)
  21. return PartialView(list);
  22. }
  23. }
  24. }

PartialIndex视图

  1. @model List<MvcApp.Models.T_UserInfo>
  2. <select id="dp1">
  3. @{
  4. foreach (var item in Model)
  5. {
  6. <option value="0">@item.Name</option>
  7. }
  8. }
  9. </select>

真实的使用介绍 (重点)

PartialViewDeomController控制器

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.Mvc;
  6. namespace MvcApp.Controllers
  7. {
  8. using MvcApp.Models;
  9. public class PartialViewDeomController : Controller
  10. {
  11. public ActionResult Index()
  12. {
  13. return View();
  14. }
  15. // 分部视图的作用一般用于嵌到如一些正常的视图中去。(类似与自定义控件)相当于: Server.Execute(string path)
  16. public ActionResult PartialIndex()
  17. {
  18. var list = new List<T_UserInfo>()
  19. {
  20. new T_UserInfo(){Id=1,UserName="无盐海",Name="凡斌"},
  21. new T_UserInfo(){Id=1,UserName="阿宝",Name="黄雪辉"},
  22. };
  23. //分部视图不会去执行_ViewStart.cshtml中的内容(分部视图以PartialView()返回)
  24. return PartialView(list);
  25. }
  26. }
  27. }

Index视图与PartialIndex分部视图。(注意:这里是在Index视图里调用PartialIndex分部视图)

    1. @{
    2. Layout = null;
    3. }
    4. @using MvcApp.Models;
    5. <!DOCTYPE html>
    6. <html>
    7. <head>
    8. <meta name="viewport" content="width=device-width" />
    9. <title>Index</title>
    10. <script src="~/Scripts/jquery-1.8.2.js"></script>
    11. </head>
    12. <body>
    13. <div id="loadData"></div>
    14. <div>
    15. <!--第一种方式:同一控制起下调用分部视图-->
    16. @Html.Partial("PartialIndex", new List<T_UserInfo>() { new T_UserInfo() { Id = 1, UserName = "无盐海", Name = "凡斌" }, new T_UserInfo() { Id = 1, UserName = "阿宝", Name = "周晶" }, })
    17. <!--第二种方式:同一控制起下调用分部视图-->
    18. @{
    19. Html.RenderPartial("PartialIndex", new List<T_UserInfo>() { new T_UserInfo() { Id = 1, UserName = "无盐海", Name = "凡斌" }, new T_UserInfo() { Id = 1, UserName = "阿宝", Name = "周晶" } });
    20. }
    21. <!--第三种方式:可以跨控制器调用分部视图(注意:如果通过这种方式调用分部视图,如果在再PartialIndex这个action中有传参给分部视图,则在此处调用就不需要再传递参数了)-->
    22. @{Html.RenderAction("PartialIndex", "PartialViewDeom");}
    23. <!--第四种方式:也是可以跨控制器调用分部视图。和第三种是一样的-->
    24. @Html.Action("PartialIndex", new { controller = "PartialViewDeom" })
    25. <!--第五种方式:用ajax来调用:如:jquery的Load()方法-->
    26. <script type="text/javascript">
    27. $(function () {
    28. $("#loadData").load("/PartialViewDeom/PartialIndex"); //将PartialIndex分部视图中的内容加载到id为loadData这个元素中去
    29. })
    30. </script>
    31. </div>action
    32. </body>
    33. </html>

MVC |分部视图 PartialView()的更多相关文章

  1. MVC5 + EF6 + Bootstrap3 (14) 分部视图PartialView

    Slark.NET-博客园 http://www.cnblogs.com/slark/p/mvc5-ef6-bs3-get-started-partialview.html 系列教程:MVC5 + E ...

  2. mvc 分部视图(Partial)显示登陆前后变化以及Shared文件夹在解决方案资源管理器中没有显示的问题

    刚开始我的解决方案资源管理器中没有显示Shared文件夹,但Shared文件夹在项目中是实际存在的,我搜了下好像没有类似的解答(可能是我搜索的关键词不够准确).后来自己看了下vs2012. 其实解决方 ...

  3. asp.net mvc 使用ajax请求 控制器 (PartialViewResult)分部的action,得到一个分部视图(PartialView)的HTML,进行渲染

    在asp.net mvc 使用ajax请求获取数据的时候,我们一般是返回json或者xml,然后解析这些数据进行渲染,这样会比较麻烦,可以请求一个 分部action,返回一个分部视图 直接可以渲染,不 ...

  4. 【兼容写法】HttpServerUtility.Execute 在等待异步操作完成时被阻止。关键词:MVC,分部视图,异步

    异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html MVC6之前的版本,对分部视图的异步支持不是很好 问题: 视图里面有分布视图:@{ ...

  5. ASP.NET Core 入门教程 7、ASP.NET Core MVC 分部视图入门

    一.前言 1.本教程主要内容 ASP.NET Core MVC (Razor)分部视图简介 ASP.NET Core MVC (Razor)分部视图基础教程 ASP.NET Core MVC (Raz ...

  6. ASP.NET Core 入门笔记8,ASP.NET Core MVC 分部视图入门

    一.前言 1.本教程主要内容 ASP.NET Core MVC (Razor)分部视图简介 ASP.NET Core MVC (Razor)分部视图基础教程 ASP.NET Core MVC (Raz ...

  7. ASP.NET MVC部分视图PartialView的使用

    在ASP.NET MVC项目中,部分视图PartialVieww使用很广.它实际就是在ASP.NET环境的用户自定义控件UserControl. 在控制器中,创建一个视图操作Action和一个部分视图 ...

  8. ASP.NET MVC3调用分部视图-PartialView的几种方式(集)

    我们的网页通常会有好几个部分组成,一些公共的区域我们通常会做成PartialView(部分视图),但这些视图并不是完全固定的,所以还是需要 特定的Controller来控制.如果只是静态的html,虽 ...

  9. MVC分部视图@Html.Partial

    加载分布视图的方式: //1.以视图名使用当前文件夹下的视图(如果没有找到,则搜索 Shared 文件夹) @Html.Partial("_test") //加载对应文件 /Vie ...

随机推荐

  1. 2017蓝桥杯 省赛C题(承压计算)

    X星球的高科技实验室中整齐地堆放着某批珍贵金属原料. 每块金属原料的外形.尺寸完全一致,但重量不同.金属材料被严格地堆放成金字塔形. 7 5 8 7 8 8 9 2 7 2 8 1 4 9 1 8 1 ...

  2. linux(fedora) 第二课

    vi 文件名(一般模式 编辑模式 命令模式) 一般模式 (不可编辑 按 a,i,o可以切换为编辑模式): 1.删除n行:按下想删除的行数+dd 编辑模式(编辑模式 可以浏览,查找,编辑 按‘:” 可以 ...

  3. QQ邮箱无限扩容 + XMind8 Update8 Crack 小记

    QQ邮箱扩容 三个月后还可以扩容 XMind8 Update8 Crack 软件地址 软件下载地址:https://www.xmind.cn/download/xmind8 补丁地址 破解补丁下载地址 ...

  4. A1134. Vertex Cover

    A vertex cover of a graph is a set of vertices such that each edge of the graph is incident to at le ...

  5. MySQL 之 库操作,表操作

    系统数据库 information_schema :虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息.列信息.权限信息.字符信息等 mysql:核心数据库,里面包含用户.权限.关键 ...

  6. Day20--Python--约束和异常处理

    1. 异常处理(处理异常,抛出异常,自定义异常) 异常: 程序运行过程中产生的错误 1. 产生异常. raise 异常类(), 抛出异常 2. 处理异常: try: xxxxxxxx # 尝试执行的代 ...

  7. RabbitMQ入门-路由-有选择的接受消息

    比如一个日志系统,之前的处理方式呢,是各种类型(info,error,warning)的消息都发给订阅者,可是实际情况上不一定都需要.可能A需要error,其他的都不需要.那么就引入了今天的处理方式- ...

  8. linux c 编程 ------ 通过设备节点调用驱动

    驱动程序如下,加载驱动后,会在/dev文件夹下生成一个文件hello_device_node,是此驱动的设备节点 #include <linux/init.h> #include < ...

  9. mysql5.6安装优化实例

    [client]port = 3306socket = /tmp/mysql.sock[mysqld]log-bin = /data/mysql/bin/mysqlbinlogserver-id = ...

  10. league之csv导出

    有的时候当我们导出文件时,如果文件比较小可以使用phpexcel,但是当文件太大时就会遇到很多瓶颈(excel条数限制.导出时间太长等). 这个时候要么使用excel分批次导出,要么就需要使用csv导 ...