asp.net-core-5.0 - 如何在 ASP.Net Core 5 中将共享代码添加到“_layout.cshtml”中
问题描述
在我的 .Net Core 2 应用程序布局中(见下文),有一个地方我想放置我的菜单。我可以把它放在那里,但我认为将菜单作为我刚刚添加的单独代码段会更好(请参阅下面我放置 MENU 的位置)。看不到如何做到这一点。这是一个好的设计模式(包括少量代码),如果是,我该怎么做?
感谢
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>@ViewData["Title"] - Scoular Wire Desk</title>
<link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.min.css" />
<link rel="stylesheet" href="~/css/site.css" />
<link rel="stylesheet" href="https://cdn.syncfusion.com/ej2/19.2.55/bootstrap.css" />
<script src="https://cdn.syncfusion.com/ej2/19.2.55/dist/ej2.min.js"></script>
</head>
<body>
<header>
<nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow mb-3">
<div class="container">
<a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="Index">Scoular Wire Desk</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target=".navbar-collapse" aria-controls="navbarSupportedContent"
aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="navbar-collapse collapse d-sm-inline-flex flex-sm-row-reverse">
<ul class="navbar-nav flex-grow-1">
<li class="nav-item">
<a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="Index">Home</a>
</li>
<li class="nav-item">
<a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="Privacy">Privacy</a>
</li>
</ul>
</div>
</div>
</nav>
</header>
<div style="min-height: 900px; background: radial-gradient(circle at top, #e7f4fc, #d4e3fe)">
<div class="container">
<div class="row">
<div class="col-3">
<br />
MENU
</div>
<div class="col-9">
Datagrid
</div>
</div>
<main role="main" class="pb-3">
@RenderBody()
</main>
</div>
</div>
<footer class="border-top footer text-muted">
<div class="container">
© @DateTime.Now.Year - Scoular Wire Desk - <a asp-area="" asp-controller="Home" asp-action="Privacy">Privacy</a>
</div>
</footer>
<script src="~/lib/jquery/dist/jquery.min.js"></script>
<script src="~/lib/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
<script src="~/js/site.js" asp-append-version="true"></script>
<ejs-scripts></ejs-scripts>
@RenderSection("Scripts", required: false)
</body>
</html>
解决方案
推荐阅读
- c++ - 为什么编译器说这个宏函数需要右括号?
- cmake - “cmake_minimum_required(VERSION 3.10)”中的“VERSION”是什么
- excel - 多个索引匹配公式会降低 Excel 工作表的性能
- blockchain - 处理事务时出现 VM 异常:还原
- reactjs - 为什么 useState 会在点击时随机更改我的图像?
- php - 当我运行`php artisan storage:link`时,Laravel 8.60.0 创建一个文件而不是文件夹/符号链接
- list - 具有空列表值的字典
- flutter - 如何在一定时间内使用 await 运行函数
- input - 如何处理从右到左的一行输入?
- flutter - 调用 Navigator.popUntil() 时出现黑屏