首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用ASP.NET MVC中的基本控制器创建强类型母版页

在ASP.NET MVC中,基本控制器可以通过以下步骤创建强类型母版页:

  1. 首先,确保已经安装了ASP.NET MVC框架。如果没有,请访问ASP.NET官方网站下载并安装。
  2. 创建一个新的ASP.NET MVC项目。打开Visual Studio,选择“创建新项目”,然后选择“ASP.NET Web应用程序(.NET Framework)”模板。
  3. 在“新建ASP.NET Web应用程序”对话框中,选择“MVC”模板。确保已选中“添加文件夹和核心引用”复选框,然后单击“创建”。
  4. 在项目中创建一个新的母版页。在“解决方案资源管理器”中,右键单击“Views”文件夹,然后选择“添加”>“新建文件夹”。将新文件夹命名为“Shared”。
  5. 在“Shared”文件夹中,添加一个新的Razor视图。右键单击“Shared”文件夹,选择“添加”>“新建项”,然后选择“Razor视图”模板。将新视图命名为“_Layout.cshtml”,然后单击“添加”。
  6. 在“_Layout.cshtml”文件中,添加以下代码以创建一个强类型母版页:
代码语言:csharp
复制
@model YourNamespace.ViewModels.LayoutViewModel

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <title>@Model.Title</title>
    @Styles.Render("~/Content/css")
    @Scripts.Render("~/bundles/modernizr")
</head>
<body>
    <div class="navbar navbar-inverse navbar-fixed-top">
        <div class="container">
            <div class="navbar-header">
               <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
                @Html.ActionLink("Application Name", "Index", "Home", new { area = "" }, new { @class = "navbar-brand" })
            </div>
            <div class="navbar-collapse collapse">
                <ul class="nav navbar-nav">
                    <li>@Html.ActionLink("Home", "Index", "Home")</li>
                    <li>@Html.ActionLink("About", "About", "Home")</li>
                    <li>@Html.ActionLink("Contact", "Contact", "Home")</li>
                </ul>
            </div>
        </div>
    </div>
    <div class="container body-content">
        @RenderBody()
        <hr />
       <footer>
            <p>&copy; @DateTime.Now.Year - My ASP.NET Application</p>
        </footer>
    </div>

    @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/bootstrap")
    @RenderSection("scripts", required: false)
</body>
</html>
  1. 在“_Layout.cshtml”文件中,将“YourNamespace”替换为您的应用程序命名空间。
  2. 在“_ViewStart.cshtml”文件中,添加以下代码以使用新的母版页:
代码语言:csharp
复制
@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}

现在,您已经成功创建了一个强类型母版页,可以在ASP.NET MVC应用程序中使用。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

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

一、前言 1、本教程主要内容 ASP.NET Core MVC (Razor)分部视图简介 ASP.NET Core MVC (Razor)分部视图基础教程 ASP.NET Core MVC (Razor...)类型分部视图教程 2、本教程环境信息 软件/环境 说明 操作系统 Windows 10 SDK 2.1.401 ASP.NET Core 2.1.3 IDE Visual Studio Code 1.30...对于所有页面共用部分,我们可以定义母版(Layout)让视图继承共用部分。当有些公共部分我们只在某些页面用到,不需要每个页面都用到。...或者这个公共内容需要作为模板使用多次,母版就不适合承担这样作用。这时候我们可以使用分部视图来实现。...h3>@Model.Title @Model.PublishTime.ToString("yyyy-MM-dd") @Model.Body 实际上就是创建类型分部视图

2.1K20

.NET MVC第二章、控制器使用

.NET MVC第二章、控制器使用 目录 .NET MVC第二章、控制器使用 创建控制器 添加MVC视图 视图访问 路由设置 母版 ---- 创建控制器 在Controllers文件夹上点击【鼠标右键...在MVC控制器中选择MVC5 控制器 - 空,点击【添加】 输入控制器名称,一定要以【Controller】结尾,实际控制器名称是前缀命名,这里是【Test】 默认继承Controller 同时可以在...具体母版 _Layout.cshtml有两段特别的Razor声明 RenderBody:“body占位符”作用。...将子页面定义代码块填入到_Layout.cshtml@ RenderSection所在位置 母版一般咱们MVC就选择上下结构就够用了,如果有单独需求,可以将菜单选项编辑成下拉菜单,这样功能选择就肯定够用了...没有其它必要。 因为MVC项目一般都是提供千人以内企业办公需求,大型项目咱们会使用ASP.NET CORE来创建,微服务在处理并发上会好很多。

83510

如何ASP.NET MVC 中集成 AngularJS(1)

除了使用 AngularJS 和 ASP.NET MVC,这个应用程序也将实现使用微软 ASP.NET Web API 服务来创建 RESTful 服务。...因为我想使用 ASP.NET 捆绑来加载所有的 AngularJS 控制器。一旦开始索引,一个 ASP.NET 捆绑巨大挑战将会出现在服务器端。...基本 URL 用于在整个应用程序,解决所有相对 URL 问题。你可以在应用程序设置,如下所示母版 header 部分基本 URL: <!...主页索引 Razor 视图和 MVC 路由 ASP.NET MVC 中集成 AngularJS 一件有趣事情,就是应用程序实际上是如何启动和实现路由。...我有两个选择,要么直接嵌入 NG-View 代码到母版 _Layout.cshtml 或使用 Razor 视图将它注入到母版。我决定简单地从索引 Razor 视图中注入标签。

7.5K60

一步一步创建ASP.NET MVC5程序(十)

前言 朋友们, 大家好,我还是Rector,写ASP.NET MVC 5系列文章 [一步一步创建ASP.NET MVC5程序Repository+Autofac+Automapper+SqlSugar...所以本文为大家分享内容是: 母版 部分视图 母版概述 ASP.NET MVC母版类似于传统Webform.master母版页面,它可以让我们在做WEB应用程序开发时页面布局结构更加规范化...、标准化,母版将页面相同、通用区域封装在一起。...ASP.NET MVC 5 WEB应用程序开发,我们通常使用视图引擎为:Razor,这个视图引擎母版页面默认位于网站目录[/Views/Shared/_Layout.cshtml],在具体视图页面...一定要记住哦~~~ 应用母版 好了,母版提取并封装整理好了,现在我们修改首页,来使用刚才创建母版,首页修改后Razor页面代码如下: home/index.cshtml @model IEnumerable

1.9K110

ASP.NET Core 入门教程 6、ASP.NET Core MVC 视图布局入门

一、前言 1、本教程主要内容 ASP.NET Core MVC (Razor)视图母版教程 ASP.NET Core MVC (Razor)带有Section视图母版教程 ASP.NET Core...二、母版视图模板 网页往往有通用布局,比如导航、底部等等,这些页面中共用部分,就需要放在母版里面。 这样每个页面只用关注本页面要完成功能/内容即可。...1、创建布局(Layout)作为母版 在项目根目录Views文件夹创建子目录Shared,并在Shared目录创建母版 _Layout.cshtml 通常公共Razor视图文件名都以_开头...2、创建视图作为子页面 创建视图并指定母版(Layout) 在/Views/Home中新建文件Index.cshtml 在页面可以通过以下方式指定母版 指定母版名字 @{ Layout...但是对于一些特殊子页面可能需要重写母版中一些内容,或者在母版插入自己想呈现内容,而不是只能将子页面呈现在固定位置。

2.8K40

【译】在 ASP.NETASP.NET Core 之间共享代码

让我们谈谈如何修改一个有 10 年历史应用程序代码,以便它可以与 ASP.NET Core 共享。...迁移此 Web 应用第一步是创建一个新 ASP.NET Core Web 应用(模型-视图-控制器)项目。此模板将添加对控制器支持,并在 Program.cs 文件映射控制器默认路由。...在 ASP.NET Core ,Controller 类不使用 System.Web.Mvc,而是使用 Microsoft.AspNetCore.Mvc。...一个好方法是创建一个部分类并将这些代码块提取到两个 Web 应用程序目标之间不同新方法,并使用 csproj 来控制在构建项目时包含哪些文件。...下面是一个母版,它混合支持来自 ASP.NET 子操作和来自 ASP.NET Core 视图组件,这样我们就可以渲染已知购物车中有多少商品页面部分。

4.5K20

【译】在 ASP.NETASP.NET Core 之间共享代码

让我们谈谈如何修改一个有 10 年历史应用程序代码,以便它可以与 ASP.NET Core 共享。...迁移此 Web 应用第一步是创建一个新 ASP.NET Core Web 应用(模型-视图-控制器)项目。此模板将添加对控制器支持,并在 Program.cs 文件映射控制器默认路由。...在 ASP.NET Core ,Controller 类不使用 System.Web.Mvc,而是使用 Microsoft.AspNetCore.Mvc。...一个好方法是创建一个部分类并将这些代码块提取到两个 Web 应用程序目标之间不同新方法,并使用 csproj 来控制在构建项目时包含哪些文件。...下面是一个母版,它混合支持来自 ASP.NET 子操作和来自 ASP.NET Core 视图组件,这样我们就可以渲染已知购物车中有多少商品页面部分。

4.9K30

.NET MVC第六章、@Html.Partial(string name)分布视图

视图 引入Partial 母版测试 ---- Partial视图 使用HTML辅助方法 Html.Partial()可以直接引用分部视图 使用Partial需要单独声明一个【视图层】 控制器 public...很多时候插入模板方式还是使用母版进行处理。一般使用上下结构/上左右结构这两个类型比较多。我们可以根据具体需求进行编辑。...在Razor引擎没有了“母版”,取而代之是叫做“布局”页面(_Layout.cshtml)放在了共享视图文件夹。...在这个页面,会看到标签里有这样一条语句: @RenderBody() 其实它作用和母版服务器控件类似,当创建基于此布局页面的视图时,视图内容会和布局页面合并...,而新创建视图内容会通过布局页面的@RenderBody()方法呈现在标签之间。

76030

七天学会ASP.NET MVC (五)——Layout页面使用和用户角色管理

ASP.Net MVC 数据处理 七天学会ASP.NET MVC (四)——用户授权认证问题 七天学会ASP.NET MVC (五)——Layout页面使用和用户角色管理 七天学会ASP.NET MVC...(六)——线程问题、异常处理、自定义URL 七天学会ASP.NET MVC(七)——创建应用 目录 实验22——添加页脚 实验23——实现用户角色管理 实验24——实现项目外观一致性 实验25——...Index View 是EmployeeListViewModel类型View,因此Footer需要所有数据都应该封装在EmployeeListViewModel。 5....实验24——实现项目外观一致性 在ASP.NET能够保证外观一致性母版使用MVC却不同于ASP.NET,在RAZOR母版称为布局页面。 在开始实验之前,首先来了解布局页面 1....运行 总结 本文主要介绍了ASP.NET MVC页眉页脚添加和Layout页面的使用,并实现了用户角色分配及Action Filter使用,下一节我们将是最难和最有趣一篇,请持续关注吧!

4.8K80

ASP.NET MVC框架(第四部分): 处理表单编辑和提交场景

这个系列第一篇建造了一个简单电子商务产品列表/浏览网站。它讨论了MVC后面的高层次概念,示范了如何从头创建一个新ASP.NET MVC项目,实现和测试这个电子商务产品列表功能。...表单输入和提交场景 为示范如何ASP.NET MVC框架处理表单输入和提交场景一些基本原则,我们将建造一个简单产品列表,产品生成,和产品编辑场景。...,选择“添加新项” -> “MVC 控制器”来创建这个类: ?...List.aspx", "New.aspx", 和 "Edit.aspx" 网页将居于 \Views\Products 子目录下,这些网页将基于\Views\Shared目录Site.Master母版上...我们将使用下面的ProductsEditViewData对象来定义一个类型视图对象来代表所有这些数据: ?

5.1K70

ASP.NET MVC编程——错误处理与日记

ASP.NET MVC错误处理应考虑到这几个方面:模型绑定期间发生错误,未能路由到指定操作,针对控制器错误处理。...使用配置文件可以帮助我们处理异常,但是不够灵活和全面;使用HandleErrorAttribute、自定义错误过滤器或重写控制器OnException方法只能解决针对控制器错误,无法解决模型绑定期间发生错误...注意:不论defaultRedirect和redirect都配置为指定路径,例如上述配置控制器error,控制器操作为error1和error2,相应地错误为Error1.cshtml和Error2...2针对控制器错误处理 2.1使用HandleErrorAttribute修饰控制器或操作。...Scott Allen,孙远帅/邹权译  ASP.NET MVC4 高级编程(第四版) 3.黄保翕,ASP.NET MVC4开发指南 4.蒋金楠,ASP.NET MVC4框架揭秘 5.https://www.asp.net

1.5K60

ASP.NET MVC5高级编程 ——(6)过滤器

可以忽略,例如:[AuthorizeAttribute]可以写成[Authorize] 开发基于Asp.Net MVC框架Web项目,面向应用系统软件开发人员只需要在这个HTTP框架流程管道挂接自己代码...看完上面的解释,可能你现在对这些过滤器执行顺序,以及如何自定义过滤器还不明白,不要紧,下面我们会逐一介绍这几个基本过滤器使用,以及如何自定义过滤器。...---在Web程序根目录Web.config文件配置角色管理者。 ---在适当Action利用Roles类型来访问自己创建RoleProvider相关方法。...,包括其子类型,默认值为System.Exception 2.View:类型为string,表示此过滤器呈递视图页面,默认值为Error 3.Master:呈递视图母板,如果不指定,视图会用其默认母版...总结:本文章简单总结了对过滤器理解以及如何使用MVC框架内置基本过滤器和如何自定义过滤器及应用。

2.2K40

探索ASP.NET MVC5系列之~~~2.视图篇(上)---包含XSS防御和异步分部视图处理

但是处理数据时候就特别麻烦了(ViewBag是弱类型,不能点出我们需要属性),这时候类型就油然而生了~~~ 扩展:动态值不能作为参数传递给扩展方法(C#编译器在编译时候为了选择正确扩展方法肯定是需要其真正类型...控制器: ? 视图: ? 常用命名空间可以设置在Viewsweb.config,eg: ?...如果你视图是aspx记得过滤HTML,JS,URL哦~基本上问题都出在这 7.布局系列 1._ViewStart MVC5以前都是要手动引用”母版“ ?...自从MVC5有了_ViewStart.cshtml,感觉整个春天都来了 ? ? 视图都不需要引用”母版“了(默认就全部引用了_Layout) ?...如果子页面没有定义Footer节,那么就报错了 ? 其他两种写法:子定义了Footer就显示子,没有定义就显示默认 ? ?

2.2K70

MVC5学习系列--Razor视图(一)

视图作用 我们初步了解一下,Razor视图是在MVC3加入新玩法,嗯..注意MVC1 2 都是和Webform那种蛋疼无比写法,那么,问题来了,挖掘机技术哪家?!(艹,什么鬼,.....视图用法 上面大概展示了视图作用..下面我们就来用用傲娇它 视图常用一些数据字典. ViewBag,ViewData,ViewDataDictionary,任意类型.....嗯,这里我们暂时不提类型,后面讲模型时候在来将, 下面我们看个实例,代码如下: //我们在Test控制器,用三种方式来给视图Data赋值.......就是母版啦.....//这里 返回部分视图 return PartialView(); } 小结 这一篇详细了解了在MVC3之后出现Razor视图一些基本使用方式,了解了一下他内部情况

1.3K80

ASP.NET MVC 重点教程一周年版 第十一回 母版、用户自定义控件及文件上传

母版(Master) 1.母版是与Controller无关母版只是一个View文件,而没有任何Controller与之相对应。...2.其实在ASP.NET MVCViewaspx与母版并不像WebForm那样紧密关联。...例如我想更换一个aspx母版,只要在Actionreturn 时指定所要使用Master即可: 如图我有2个Master文件,而/Views/Home/Index.aspx则为 这时我们如果想要使用...View(null,"Site2"); 3: } 自定义控件 RenderPartial ASP.NET MVC如果要自定义控件的话并不能像WebForm那样用这样来引用...MVC重典一周年版已经没有什么基础东西可以讲了,如果大家想进一步学习ASP.NET MVC,请关注Asp.net Mvc Framework 系列随时更新

1.2K10

一步一步创建ASP.NET MVC5程序(十一)

最近Rector忙于换工作,没有太多时间来更新我们ASP.NET MVC 5系列文章 [一步一步创建ASP.NET MVC5程序Repository+Autofac+Automapper+SqlSugar...本文知识要点 本期是该系列第十一篇,上一篇《一步一步创建ASP.NET MVC5程序[Repository+Autofac+Automapper+SqlSugar](十)》我们了解了母版和部分视图,...并使用母版和部分视图重新组织了页面的共用区域HTML代码,本文我们将要涉及到内容为: 通用分页封装 文章分页实现 通用分页封装 在之前两期中,我们文章列表页面是没有分页功能,而是使用如下方法... 让我们开始ASP.NET MVC 5 应用程序探索之旅吧!!!...本期源码托管地址:请至首发地址《一步一步创建ASP.NET MVC5程序[Repository+Autofac+Automapper+SqlSugar](十一)》查看 看完教程如果觉得还不过瘾,想“勾对

1.5K60
领券