知识大全 DIY“ASP.NET MVC 嵌套的母版页”项模板
Posted 知
篇首语:不要以为努力只是自己的事,别忘了生命赐给你的春光!本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 DIY“ASP.NET MVC 嵌套的母版页”项模板相关的知识,希望对你有一定的参考价值。
DIY“ASP.NET MVC 嵌套的母版页”项模板 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
相信不少人与文超一样需要一个MVC 嵌套的母版页 项模板 嵌套的母版有助于细致规划页面公共部分(尤其是要求一改全改的地方) 但是目前官方的MVC项模板中尚未提供 而事实上制作一份项模板是相当简单的 文超懒怠成性 遂以先在网上搜索一番 希望有现成的以飨懒人 未果 于是 自己动手 丰衣足食 吧
先来看看最终结果吧 那么接下来文超将介绍两点 共四种方法
安装完后您将看到 MVC 节点下多了一个 MVC View 嵌套的母版页 模板 嗯 中文字在英文堆里特别显眼
一是大众做法 敲多两行代码 忍着点也能活 等微软的更新(三种)
二是文超写文章的目的所在 使用自制的土枪
文超所指的是在MVC尚未提供而又想要得到 嵌套的母版页 一样的效果时的做法 其实如大家所知 要在 MVC 下实现这功能相当简单 为方便演示例子 文超对默认的MVC项目里的 site master 进行了人工改造 在母版里加了几个 ContentPlaceHolder
<%@ Master Language= C# Inherits= System Web Mvc ViewMasterPage %>
<!DOCTYPE PUBLIC //W C//DTD XHTML Strict//EN strict dtd >< xmlns= ><head runat= server > <title><asp:ContentPlaceHolder ID= TitleContent runat= server /></title> <link stylesheet type= text/css /> <asp:ContentPlaceHolder ID= HeaderContent runat= server /></head>
<body> <div> <h >这儿是头</h > <div> <asp:ContentPlaceHolder ID= BodyContent runat= server /> <h >这儿是其他内容</h > </div> <h >这儿是脚</h > </div></body></>
方法一
接着文超再在 Views\\Shared 下新建一个 Article Master 母版
要让 Article Master作为 Site Master 的嵌套母版 只需要将首行的 <%@ Master Language= C# Inherits= System Web Mvc ViewMasterPage %> 加入 MasterPageFile 属性 并将其值填入指定嵌套的母版 并去掉所有 HTML 代码 敲入与嵌套母版 site master 中的 ContentPlaceHolder 对应一致的 Content 即可 按文超的例子 去掉了首行声明以外的所有 HTML 以后 并厌恨其烦地敲了这些代码 Article Master 应该长成这样
<%@ Master Language= C# MasterPageFile= ~/Views/Shared/Site Master Inherits= System Web Mvc ViewMasterPage %>
<asp:Content ID= Content ContentPlaceHolderID= TitleContent runat= server ></asp:Content><asp:Content ID= Content ContentPlaceHolderID= HeaderContent runat= server ></asp:Content><asp:Content ID= Content ContentPlaceHolderID= CSSContent runat= server ></asp:Content><asp:Content ID= Content ContentPlaceHolderID= BodyContent runat= server ></asp:Content>
方法二
这也是文超之前使用的办法 使用ViewContentPage你可以免除了敲入这部分代码的劳累
<asp:Content ID= Content ContentPlaceHolderID= TitleContent runat= server ></asp:Content>
<asp:Content ID= Content ContentPlaceHolderID= HeaderContent runat= server ></asp:Content>
<asp:Content ID= Content ContentPlaceHolderID= CSSContent runat= server ></asp:Content>
<asp:Content ID= Content ContentPlaceHolderID= BodyContent runat= server ></asp:Content>
但是你要做两件事情
ViewContentPage 生成的文件名扩展名是 aspx 你需要将它修改为 master 扩展名
修改首行的 page 指令为 master 指令 例如
<%@ Master Language= C# MasterPageFile= ~/Views/Shared/Site Master Inherits= System Web Mvc ViewMasterPage %>
方法三
方法三是使用 ASP NET WebForm 的 嵌套的母版 模板 这个大家应该都很熟悉 你可能要做的也是两件事情
将多余的 master cs 及 designer cs 删掉
将首行的多余属性去掉 将 Inherits 属性值设置为: System Web Mvc ViewMasterPage
方法四
这是本文的核心所在 这种方法使用自制模板 一次性填补上述三种方法的不足 既不用如方法一那样敲键盘 也不用像方法二那样修改 master 指令 更不用像方法三那样删文件 一劳永逸 一箭三雕 一石三鸟 一举三得 的的确确 确确实实 实实在在让文超舒心 首先文超在这个目录下(MVC项模板目录)
C:\\Program Files\\Microsoft Visual Studio \\Common \\IDE\\ItemTemplates CSharp\\Web\\MVC
找到这个压缩文件
MvcViewContentPageItemTemplatev cs zip
其实这就是方法二所使用的MVC View Content Page项模板 解压到任意一个文件夹(文超解压到桌面去了 文超的桌面非常的乱 我相信大部分程序员的桌面都是乱的一团糟的)
你将得到两样东西
Views 文件夹
MvcViewNestedMasterPageItemTemplatev cs vstemplate
这份文件正是模板定义 是一份 XML 文件 接下来进行人工改造 改造的结果是这样
<VSTemplate Version= xmlns= Type= Item > <TemplateData> <DefaultName>ViewNestedMasterPage Master</DefaultName> <Name Package= DC FBF c AAA F B F ID= >MVC View 嵌套的母版页</Name> <Icon Package= c c ef c f b c f ID= /> <Description Package= DC FBF c AAA F B F ID= >MVC View 继承自其他母版页的母版页</Description> <ProjectType>CSharp</ProjectType> <SortOrder> </SortOrder> <SupportsMasterPage>true</SupportsMasterPage> <NumberOfParentCategoriesToRollUp> </NumberOfParentCategoriesToRollUp> <RequiredFrameworkVersion> </RequiredFrameworkVersion> <TemplateGroupID>MVC</TemplateGroupID> <ShowByDefault>false</ShowByDefault> </TemplateData> <TemplateContent> <CustomParameters> <CustomParameter Name= $language$ Value= C# /> <CustomParameter Name= $SelectMaster$ Value= true /> <CustomParameter Name= $viewdatatype$ Value= /> <CustomParameter Name= $usingviewdatatype$ Value= /> <CustomParameter Name= $ParentExtension$ Value= master /> <CustomParameter Name= $ChildExtension$ Value= cs /> </CustomParameters> <References /> <ProjectItem SubType= TargetFileName= $fileinputname$ Master ReplaceParameters= true >Views\\Home\\ViewNestedMasterPage Master</ProjectItem> </TemplateContent> <WizardExtension> <Assembly>Microsoft VisualStudio Web Extensions Version= Culture=neutral PublicKeyToken= bf ad e </Assembly> <FullClassName>Microsoft VisualStudio Web Mvc ItemTemplateWizard</FullClassName> </WizardExtension></VSTemplate>
第二步进入到 Views\\Home 找到ViewContentPage aspx 文件 将其删除 然后在此文件夹内创建一份 master 文件 据MvcViewNestedMasterPageItemTemplatev cs vstemplate 的改造结果 这份文件需要命名为 ViewNestedMasterPage Master 这份 master 文件的内容如下
<%@ Master Language= C# MasterPageFile= $MasterPage$ Inherits= System Web Mvc ViewMasterPage %>
$ContentTags$
第三步改完后将其压缩为 ZIP 压缩包(选中 Views 文件夹和 MvcViewNestedMasterPageItemTemplatev cs vstemplate 后右击 >发送到 >压缩(zipped)文件夹)为它起个统一风格的名字 MvcViewNestedMasterPageItemTemplatev cs zip
因为时间关系文超已经制作好这份文件了 点击此处下载 接着你只需要从第四步开始
第四步将ZIP文件复制到刚才 ViewContentPage 项模板同一位置
C:\\Program Files\\Microsoft Visual Studio \\Common \\IDE\\ItemTemplates CSharp\\Web\\MVC
第五步添加项模板到 VS
无论你是用 CMD 还是在VS的快捷方式上(别忘记安装完后设置回原来路径)修改都可以 你需要使用 setup 选项将创建的项模板添加到 VS 中去 执行下面命令行
C:\\Program Files\\Microsoft Visual Studio \\Common \\IDE\\devenv exe /setup
cha138/Article/program/ASP/201311/21717相关参考
如何DIY书夹子方法图解 以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!如何DIY书夹子方法图解看你干
c#DIY随机数类 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在类库横行的今天请支持DIY直
情人节送什么DIY礼物好 以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!情人节送什么DIY礼物好曾经有
如何DIY超轻粘土作品步骤图方法图解 以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!如何DIY超轻粘土
diy行业分析。谁能给个建议啊?新手,想从DIY行业入手搞自主创业。谁有好的思路指点下啊? 以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理后发
如何利用废报纸进行手工DIY 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!如何利用废报纸进行手工D
知识大全 Extended CHM PHP 语法手册之 DIY
ExtendedCHMPHP语法手册之DIY 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Ex
如何diy礼品盒的做法方法图解自空纸盒制作置物盒准备材料:各种空纸盒(如:罐头盒、月饼盒、饼干盒、牙膏盒等)、花纹包装纸、英文报纸、纸板(用于内部增加厚度)。A把面巾纸盒做成的置物盒,尺寸正符合用来放
七夕情人节送什么礼物好diy七夕礼物推荐七夕节送什么礼物好?相信这是很多青年男女在七夕前最纠结的问题,七夕情人节送什么好?其实只要是自己用心准备的礼物,送什么都是好的,如果七夕情人节不知道送什么,不妨
知识大全 本人对留学申请是小白,准备去美国读电子信息工程,我是找留学中介还是diy啊
本人对留学申请是小白,准备去美国读电子信息工程,我是找留学中介还是diy啊?不懂就去学呗,大家都是这么走过来的。不管是中介帮你还是DIY,流程都是一样的:准备语言考试TOEFL,美国研究生入学考试GR