MVC |分部视图 PartialView()
介绍如何定义
其实它和普通视图没有多大区别,只是创建分部视图的时候视图里没有任何内容,你需要什么标签你自己加。第二就是分部视图不会执行_ViewStart.cshtml中的内容)
控制器
PartialViewDeomController控制器
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using System.Web.Mvc;
- namespace MvcApp.Controllers
- {
- public class PartialViewDeomController : Controller
- {
- //
- // 分部视图的作用一般用于嵌到如一些正常的视图中去。(类似与自定义控件)相当于: Server.Execute(string path)
- public ActionResult PartialIndex()
- {
- //View()方法返回的视图默认都会去执行_ViewStart.cshtml中的内容
- //return View();
- //分部视图不会去执行_ViewStart.cshtml中的内容(分部视图以PartialView()返回)
- return PartialView();
- }
- }
- }
PartialIndex 视图
- <!--注意,创建分部视图后,视图里是没有任何东西的。自己需要什么标签,就加什么标签。这个视图的用法就是到时候嵌套到一些以View()返回的正常视图中去-->
- <select id="dp1">
- <option value="0">湖南</option>
- <option value="1">广东</option>
- <option value="0">上海</option>>
- </select>
- <select id="dp2">
- <option value="0">纽约</option>
- <option value="1">洛杉矶</option>
- <option value="0">华盛顿</option>>
- </select>
使用介绍(我们发现它与普通视图是差不多的)
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using System.Web.Mvc;
- namespace MvcApp.Controllers
- {
- using MvcApp.Models;
- public class PartialViewDeomController : Controller
- {
- //
- // 分部视图的作用一般用于嵌到如一些正常的视图中去。(类似与自定义控件)相当于: Server.Execute(string path)
- public ActionResult PartialIndex()
- {
- var list = new List<T_UserInfo>()
- {
- new T_UserInfo(){Id=1,UserName="无盐海",Name="凡斌"},
- new T_UserInfo(){Id=1,UserName="阿宝",Name="周晶"},
- };
- //分部视图不会去执行_ViewStart.cshtml中的内容(分部视图以PartialView()返回)
- return PartialView(list);
- }
- }
- }
PartialIndex视图
- @model List<MvcApp.Models.T_UserInfo>
- <select id="dp1">
- @{
- foreach (var item in Model)
- {
- <option value="0">@item.Name</option>
- }
- }
- </select>
真实的使用介绍 (重点)
PartialViewDeomController控制器
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using System.Web.Mvc;
- namespace MvcApp.Controllers
- {
- using MvcApp.Models;
- public class PartialViewDeomController : Controller
- {
- public ActionResult Index()
- {
- return View();
- }
- // 分部视图的作用一般用于嵌到如一些正常的视图中去。(类似与自定义控件)相当于: Server.Execute(string path)
- public ActionResult PartialIndex()
- {
- var list = new List<T_UserInfo>()
- {
- new T_UserInfo(){Id=1,UserName="无盐海",Name="凡斌"},
- new T_UserInfo(){Id=1,UserName="阿宝",Name="黄雪辉"},
- };
- //分部视图不会去执行_ViewStart.cshtml中的内容(分部视图以PartialView()返回)
- return PartialView(list);
- }
- }
- }
Index视图与PartialIndex分部视图。(注意:这里是在Index视图里调用PartialIndex分部视图)
- @{
- Layout = null;
- }
- @using MvcApp.Models;
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="viewport" content="width=device-width" />
- <title>Index</title>
- <script src="~/Scripts/jquery-1.8.2.js"></script>
- </head>
- <body>
- <div id="loadData"></div>
- <div>
- <!--第一种方式:同一控制起下调用分部视图-->
- @Html.Partial("PartialIndex", new List<T_UserInfo>() { new T_UserInfo() { Id = 1, UserName = "无盐海", Name = "凡斌" }, new T_UserInfo() { Id = 1, UserName = "阿宝", Name = "周晶" }, })
- <!--第二种方式:同一控制起下调用分部视图-->
- @{
- Html.RenderPartial("PartialIndex", new List<T_UserInfo>() { new T_UserInfo() { Id = 1, UserName = "无盐海", Name = "凡斌" }, new T_UserInfo() { Id = 1, UserName = "阿宝", Name = "周晶" } });
- }
- <!--第三种方式:可以跨控制器调用分部视图(注意:如果通过这种方式调用分部视图,如果在再PartialIndex这个action中有传参给分部视图,则在此处调用就不需要再传递参数了)-->
- @{Html.RenderAction("PartialIndex", "PartialViewDeom");}
- <!--第四种方式:也是可以跨控制器调用分部视图。和第三种是一样的-->
- @Html.Action("PartialIndex", new { controller = "PartialViewDeom" })
- <!--第五种方式:用ajax来调用:如:jquery的Load()方法-->
- <script type="text/javascript">
- $(function () {
- $("#loadData").load("/PartialViewDeom/PartialIndex"); //将PartialIndex分部视图中的内容加载到id为loadData这个元素中去
- })
- </script>
- </div>action
- </body>
- </html>
MVC |分部视图 PartialView()的更多相关文章
- MVC5 + EF6 + Bootstrap3 (14) 分部视图PartialView
Slark.NET-博客园 http://www.cnblogs.com/slark/p/mvc5-ef6-bs3-get-started-partialview.html 系列教程:MVC5 + E ...
- mvc 分部视图(Partial)显示登陆前后变化以及Shared文件夹在解决方案资源管理器中没有显示的问题
刚开始我的解决方案资源管理器中没有显示Shared文件夹,但Shared文件夹在项目中是实际存在的,我搜了下好像没有类似的解答(可能是我搜索的关键词不够准确).后来自己看了下vs2012. 其实解决方 ...
- asp.net mvc 使用ajax请求 控制器 (PartialViewResult)分部的action,得到一个分部视图(PartialView)的HTML,进行渲染
在asp.net mvc 使用ajax请求获取数据的时候,我们一般是返回json或者xml,然后解析这些数据进行渲染,这样会比较麻烦,可以请求一个 分部action,返回一个分部视图 直接可以渲染,不 ...
- 【兼容写法】HttpServerUtility.Execute 在等待异步操作完成时被阻止。关键词:MVC,分部视图,异步
异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html MVC6之前的版本,对分部视图的异步支持不是很好 问题: 视图里面有分布视图:@{ ...
- ASP.NET Core 入门教程 7、ASP.NET Core MVC 分部视图入门
一.前言 1.本教程主要内容 ASP.NET Core MVC (Razor)分部视图简介 ASP.NET Core MVC (Razor)分部视图基础教程 ASP.NET Core MVC (Raz ...
- ASP.NET Core 入门笔记8,ASP.NET Core MVC 分部视图入门
一.前言 1.本教程主要内容 ASP.NET Core MVC (Razor)分部视图简介 ASP.NET Core MVC (Razor)分部视图基础教程 ASP.NET Core MVC (Raz ...
- ASP.NET MVC部分视图PartialView的使用
在ASP.NET MVC项目中,部分视图PartialVieww使用很广.它实际就是在ASP.NET环境的用户自定义控件UserControl. 在控制器中,创建一个视图操作Action和一个部分视图 ...
- ASP.NET MVC3调用分部视图-PartialView的几种方式(集)
我们的网页通常会有好几个部分组成,一些公共的区域我们通常会做成PartialView(部分视图),但这些视图并不是完全固定的,所以还是需要 特定的Controller来控制.如果只是静态的html,虽 ...
- MVC分部视图@Html.Partial
加载分布视图的方式: //1.以视图名使用当前文件夹下的视图(如果没有找到,则搜索 Shared 文件夹) @Html.Partial("_test") //加载对应文件 /Vie ...
随机推荐
- hdu 1978 How many ways(记忆化搜索)
这是一个简单的生存游戏,你控制一个机器人从一个棋盘的起始点(1,1)走到棋盘的终点(n,m).游戏的规则描述如下:1.机器人一开始在棋盘的起始点并有起始点所标有的能量.2.机器人只能向右或者向下走,并 ...
- Yii2 如何输出 sql 语句?
可以用 $model->find()->createCommand()->getRawSql(); 不能带 all(). find() 它的 返回值类型是 yii\db\Active ...
- P1972 HHのnecklace 离线+树状数组
此题莫队可过 然而太难了...... 我在胡雨菲那看的解法,然后自己打了一波,调了一个错,上交,自信AC. 做法:离线,对于L排序. 每种颜色可能出现很多次,那么我们如何不算重复呢? 只需把[L,n] ...
- 【CH6801】棋盘覆盖
题目大意:给定一个 N*N 的棋盘,棋盘上有些位置不能防止任何东西,现用 1*2 的骨牌填充棋盘,问最多能铺多少块骨牌. 题解:由于骨牌只能覆盖相邻的两个格子,那么按照对角线进行划分的格子可以保证一定 ...
- C++ const 理解
转载自:https://www.cnblogs.com/jiabei521/p/3335676.html 如果函数需要传入一个指针,面试官可能会问是否需要为该指针加上const,把const加在指针不 ...
- Redis需要多少内存预留-内存占用多少才安全
转: Redis需要多少内存预留-内存占用多少才安全 2018年02月10日 18:13:37 常城 阅读数:10280 版权声明:本文为博主原创文章,未经博主允许不得转载. https://bl ...
- Day21--Python--C3算法和super()
一. python的继承. 多继承 子类继承父类. 为什么要继承???? 为了节省开发时间. 调高开发效率. 代码得到了重用 在python中存在多继承 MRO(method resolution O ...
- 计算机基础:计算机网络-chapter5 运输层
一.运输层做什么事情,通过什么协议实现, 运输层做什么 为相互通信的应用提供逻辑通信 通过端口号来确定应用,提供端到端的服务: 为什么需要运输层,IP层不是就实现了传输数据吗 从IP层来说,是两台主机 ...
- Error[Pe020]: identifier "FILE" is undefined
Error[Pe020]: identifier "FILE" is undefined 需要添加头文件:#include <stdio.h>
- python3 rrdtool 使用
源自 python自动化运维:技术与最佳实践 并做略微修改 安装 yum install python-rrdtoolyum install rrdtool-devel #因为采集用了psutil模块 ...