介绍如何定义

其实它和普通视图没有多大区别,只是创建分部视图的时候视图里没有任何内容,你需要什么标签你自己加。第二就是分部视图不会执行_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. cf1088E Ehab and a component choosing problem (树形dp)

    题意(考试时看错了对着样例wa了好久..):从树上选k个连通块,使得权值的平均值最大的基础上,选的块数最多 如果不考虑块数最多的限制,肯定是只选一个权值最大的块是最好的 然后只要看这个权值最大的块有多 ...

  2. Markdown基础(内含:锚点使用,使用HTML,新页面跳转,目录生成)

    Github样式显示参考:点我 之前说过用word写文章,这次说说Markdown写文章(推荐) 逆天推荐使用VSCode编写 装这个插件写作更方便: 内含:锚点使用,使用HTML,新页面跳转,目录生 ...

  3. javascript之复习(css属性值的计算)

    js取div的宽高咋办,css有content-box,border-box,padding-box,表现又不一样.好在有个offsetWidth, <style type="text ...

  4. POJ--1797 Heavy Transportation (最短路)

    题目电波: POJ--1797 Heavy Transportation n点m条边, 求1到n最短边最大的路径的最短边长度 改进dijikstra,dist[i]数组保存源点到i点的最短边最大的路径 ...

  5. BZOJ2288 生日礼物

    本题是数据备份的进阶版. 首先去掉所有0,把连续的正数/负数连起来. 计算所有正数段的个数与总和. 然后考虑数据备份,有一点区别: 如果我们在数列中选出一个负数,相当于把它左右连起来. 选出一个正数, ...

  6. A1109. Group Photo

    Formation is very important when taking a group photo. Given the rules of forming K rows with N peop ...

  7. [luogu3391][文艺平衡树]

    题目链接 思路 splay区间操作的裸题. 假如要对l-r这段区间操作,那么就先把l-1伸展到根节点,然后把r +1伸展为根的儿子.这样r + 1的左儿子就是要操作的区间了.只要在上面打上标记,以后每 ...

  8. 解决python解析文件时输出乱码

    首先获取到json模块,encoding指定文件编码utf-8,errors报错时忽略错误,print()输出结果看看是否有问题. # -*- coding: utf-8 -*- import jso ...

  9. Jquery Mobile列表

    向 <ol> 或 <ul> 元素添加 data-role="listview" 1.圆角和外边距 :data-inset="true" ...

  10. Haproxy 安装初体验

    20180916 haproxy Haproxy简介 Haproxy是一款免费的.快速的和稳定的解决方案,提供HA和LB功能,同时对基于TCP的应用和HTTP的应用进行代理,对于流量很大的web站点来 ...