MVC——母版与分部
背景:
母版是因为有一些网站里的很多网页都是采用相同的布局,所以只需要写一个母版,然后在母版该写不同模板的地方加上@RenderBody(),然后创建不同模块的时候只需要创建视图,然后选择母版就可以了。。 至于,分部,则是@Html.Partial("路径") 。。。。 极大地提高了代码的重用率。
大体步骤:

详细步骤:
一、首先创建一个母板:

二、给该母板设计布局
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>MasterPage</title>
<style>
.aa
{
text-align:center;
background-color:#FFFFcc;
}
</style>
</head>
<body>
<div>
<table width="100%" border="" cellpadding="" cellspacing="">
<tr class="aa" >
<td height="100px" ><h1>这是标题栏</h1></td>
</tr>
<tr>
<td>
<table width="100%" border="" cellpadding="" cellspacing="">
<tr>
<td width="" >@Html.Partial("~/Views/NewsTypeLinkPartial.cshtml") </td> //这里是静态分部,括号里的是静态分部的路径名
<td width="" > </td>
<td>@RenderBody() </td> //这里放不同的模块,是以该母版为基础的
</tr>
</table>
</td>
</tr>
<tr class="aa">
<td height="100px" ><h1>这是结束栏</h1></td>
</tr>
</table>
</div>
</body>
</html>
三、设计几个用到的分部

注意勾选上创建为分部视图!
代码:(粗糙解释)
<h2>测试</h2>
<div>
@Html.ActionLink("测试1","ceshi1","Home")<br>
@Html.ActionLink("测试2","ceshi2","Home")<br>
测试3<br>
测试4<br>
</div>
四、创建套用母版的不同模块

注意:勾选上使用布局或母版页!!!
代码:
@{
ViewBag.Title = "ceshi1";
Layout = "~/Views/MasterPage.cshtml";
}
<h2>测试1</h2>
随便放
@{
ViewBag.Title = "ceshi1";
Layout = "~/Views/MasterPage.cshtml";
}
<h2>测试1</h2>
随便放
五、给每个不同的模块创建动作
namespace 母版.Controllers
{
public class HomeController : Controller
{
//
// GET: /Home/ public ActionResult Index()
{
return View(); //这里没有创建视图,所以运行的话要用下面的动作
}
public ActionResult ceshi1() //套了母板的动作
{
return View();
}
public ActionResult ceshi2()//套了母板的动作
{
return View();
}
public ActionResult xiangxi1()//套了母板的动作
{
return View();
}
public ActionResult xiangxi2()
{
return PartialView(); //这个是分部视图,没套模板的
}
}
}
效果图:



MVC——母版与分部的更多相关文章
- MVC中使用分部视图参数,改变分部视图连接样式
MVC中使用分部视图参数,改变分部视图连接样式! Controller代码 [ChildActionOnly] public ActionResult Navigator(int tag) { ret ...
- 爱上MVC~ajax调用分部视图session超时页面跳转问题
回到目录 这个问题出现了很多年了,都没有解决,问题是这样的,有一个需要授权才可以访问的分部视图,在一个view中使用ajax的方法去调用它,然后更新页面的局部DIV,这时,如果你长时间不操作,sess ...
- [转载]ASP.NET MVC 3的分部视图
1.什么是分部视图,我们应该什么时候应该用? 作为一个对ASP.NET MVC 模型很熟悉的开发者,他们自然想创建一个内容和代码都可以重用的组件,在web 窗体,我们可以创建一个web用户控件或web ...
- 如何应用ASP.NET MVC中的分部视图
概述: 在ASP.NET Web Form的开发经验中,对于User Control使用比较频繁,可以减少重复的代码,利于页面模块化,这个概念也被引入了ASP.NET MVC.即“分部视图”. 1.创 ...
- MVC中的分部视图
背景: 项目的工期马上就要到了,由于后台封装的很好,我们只需要用心熟悉框架,接下来后台的工作就是简单的代码工作了.原本以为最困难的时期已经过去,可没想到前台才是最困难的. B/S的基础十分薄弱,加上B ...
- 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 ...
- webform 转 MVC 飞一般的感觉
前言: 浅谈webform与mvc,让开发变得更加简单,这里主要通过比较webform与mvc的开发方式,以下全属个人看法,不完善的地方可以留言补充. 正文: 废话不多说,直接说工作中经常用到的地方 ...
- Asp.Net MVC 3
Asp.Net MVC 3 wcf基础教程之 契约(合同)Contract 摘要: 在前几篇博客中我有说到服务的寄宿,就是服务要运行起来必须采取的几种方式,相当于我们可以照葫芦画瓜的效果运行一个w ...
随机推荐
- C++ map.insert 传参类型不同,构造/析构次数不同
1. 传参方式 使用 insert 为 map 插值时,insert 的传参包含以下几种可能: make_pair 生成对象 pair(key_type, value_type) 生成对象 pair( ...
- OpenJudge 2802 小游戏 / Poj 1101 The Game
1.链接地址: http://bailian.openjudge.cn/practice/2802 http://poj.org/problem?id=1101 2.题目: 总时间限制: 1000ms ...
- 判断UserAgent是否来自微信
iso: Mozilla/5.0 (iPhone; CPU iPhone OS 7_0_4 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko ...
- 通过 ANE(Adobe Native Extension) 启动Andriod服务 推送消息(四)
这一节,是要把AS库和Android的jar包及相关配置文件打成一个ane包. 首先先建一个build目录,里面文件目录结构如下: 然后用打开压缩包的方式打开ServiceLib.swc, 把其中的l ...
- 《APUE》第四章笔记(2)
下面介绍对stat结构的各个成员的操作函数. 先贴个stat结构的图: access函数: #include <unistd.h> int access(const char *pathn ...
- 1. Window环境下 - 开发环境的配置: (安装Android Studio 2.1)
0. Java简介: 1990年Sun公司预料嵌入式系统将在未来家用电器领域大显生手, 于是成立了一个由James Gosling领导的"Green计划"(首席科学家Bill Jo ...
- 关于静态库和动态库的理解(C++)
库的存在,是软件模块化的基础. 库存在的意义: } 库是别人写好的现有的,成熟的,可以复用的代码,你可以使用但要记得遵守许可协议. } 现实中每个程序都要依赖很多基础的底层库,不可能每个人的 ...
- laravel1
生成模型的时候 同时生成migration文件php artisan make:model User --migration
- django 中的延迟加载技术,python中的lazy技术
---恢复内容开始--- 说起lazy_object,首先想到的是django orm中的query_set.fn.Stream这两个类. query_set只在需要数据库中的数据的时候才 产生db ...
- 8.MVC框架开发(URL路由配置和URL路由传参空值处理)
1.ASP.NET和MVC的路由请求处理 1)ASP.NET的处理 请求---------响应请求(HttpModule)--------处理请求(HttpHandler)--------把请求的资源 ...