背景:

母版是因为有一些网站里的很多网页都是采用相同的布局,所以只需要写一个母版,然后在母版该写不同模板的地方加上@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——母版与分部的更多相关文章

  1. MVC中使用分部视图参数,改变分部视图连接样式

    MVC中使用分部视图参数,改变分部视图连接样式! Controller代码 [ChildActionOnly] public ActionResult Navigator(int tag) { ret ...

  2. 爱上MVC~ajax调用分部视图session超时页面跳转问题

    回到目录 这个问题出现了很多年了,都没有解决,问题是这样的,有一个需要授权才可以访问的分部视图,在一个view中使用ajax的方法去调用它,然后更新页面的局部DIV,这时,如果你长时间不操作,sess ...

  3. [转载]ASP.NET MVC 3的分部视图

    1.什么是分部视图,我们应该什么时候应该用? 作为一个对ASP.NET MVC 模型很熟悉的开发者,他们自然想创建一个内容和代码都可以重用的组件,在web 窗体,我们可以创建一个web用户控件或web ...

  4. 如何应用ASP.NET MVC中的分部视图

    概述: 在ASP.NET Web Form的开发经验中,对于User Control使用比较频繁,可以减少重复的代码,利于页面模块化,这个概念也被引入了ASP.NET MVC.即“分部视图”. 1.创 ...

  5. MVC中的分部视图

    背景: 项目的工期马上就要到了,由于后台封装的很好,我们只需要用心熟悉框架,接下来后台的工作就是简单的代码工作了.原本以为最困难的时期已经过去,可没想到前台才是最困难的. B/S的基础十分薄弱,加上B ...

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

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

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

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

  8. webform 转 MVC 飞一般的感觉

    前言: 浅谈webform与mvc,让开发变得更加简单,这里主要通过比较webform与mvc的开发方式,以下全属个人看法,不完善的地方可以留言补充. 正文: 废话不多说,直接说工作中经常用到的地方 ...

  9. Asp.Net MVC 3

    Asp.Net MVC 3   wcf基础教程之 契约(合同)Contract 摘要: 在前几篇博客中我有说到服务的寄宿,就是服务要运行起来必须采取的几种方式,相当于我们可以照葫芦画瓜的效果运行一个w ...

随机推荐

  1. 九度OJ 1480 最大上升子序列和 -- 动态规划

    题目地址:http://ac.jobdu.com/problem.php?pid=1480 题目描述: 一个数的序列bi,当b1 < b2 < ... < bS的时候,我们称这个序列 ...

  2. git 使用小结

    git git是一个分布式版本控制系统,主要用于多人协作.可以将自己的代码托管到github上. 常用的几个命令 git pull 拉取别人的修改到本地,如果拉取内容和本地所作的修改存在冲突,git会 ...

  3. SSH+Ajax实现用户名重复检查(一)

    1.struts.xml设置 <package name="default" namespace="/" extends="json-defau ...

  4. 判断浏览器是否支持某个css属性

    方法:直接判断浏览器是否支持某个CSS属性才是王道,document.documentElement.style 如:判断是否支持 transform if( 'MozTransform' in do ...

  5. HTML5的离线储存

    在用户没有与因特网连接时,可以正常访问站点或应用,在用户与因特网连接时,更新用户机器上的缓存文件.        原理:HTML5的离线存储是基于一个新建的.appcache文件的缓存机制(不是存储技 ...

  6. python使用psutil获取服务器信息

    >>> import psutil 获取cpu信息>>> psutil.cpu_times()scputimes(user=128258.38, nice=12.2 ...

  7. 一步步学习ASP.NET MVC3 (13)——HTML辅助方法

    请注明转载地址:http://www.cnblogs.com/arhat 今天老魏是在十分郁闷,我的一个U盘丢了,心疼里面的资料啊,全部是老魏辛辛苦苦积攒的Linux资料,太心疼,到现在心情还不是很爽 ...

  8. Junit4.12、Hamcrest1.3、Eclemma的安装和使用

    1. Junit4.12和Hamcrest1.3的安装过程 步骤: 网上下载Junit和Hamcrest包文件,保存在本地. 新建Java项目命名为Triangle,在Eclipse菜单栏选择项目(P ...

  9. Windows获取其他进程中Edit控件的内容

    最近做的MFC项目中,有个获取其他进程中Edit控件内容的需求,本来以为是个很简单的问题,但是来来回回折腾了不少时间,发博记录一下. 刚开始拿到这个问题,很自然的就想到GetDlgItemText() ...

  10. poj 3373 Changing Digits (DFS + 记忆化剪枝+鸽巢原理思想)

    http://poj.org/problem?id=3373 Changing Digits Time Limit: 3000MS   Memory Limit: 65536K Total Submi ...