MVC借助MvcSiteMapProvider实现站点地图

时间:2023-03-08 19:27:59

使用MvcSiteMapProvider可轻松实现站点地图,俗称"面包屑"。如图:

MVC借助MvcSiteMapProvider实现站点地图

通过NuGet,输入MvcSiteMapProvider搜索,并安装。

在Mvc.sitemap中配置如下:

<?xml version="1.0" encoding="utf-8" ?>
<mvcSiteMap xmlns="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-3.0" enableLocalization="true">
<mvcSiteMapNode title="Home" controller="Home" action="Index">
<mvcSiteMapNode title="News" controller="News" action="Index" key="News">
<mvcSiteMapNode title="Sports News" controller="News" action="Sports"/>
</mvcSiteMapNode>
<mvcSiteMapNode title="About" controller="About" action="Index"/>
</mvcSiteMapNode>
</mvcSiteMap>

创建HomeController, Index方法以及对应的视图。
创建NewsController,Index方法和Sports方法,以及对应的视图。
创建AboutController, About方法,以及对应的视图。

在Views/Shared/_Layout.cshtml中:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<title>@ViewBag.Title</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/jquery")
</head>
<body>
<div>
@Html.MvcSiteMap().SiteMapPath()
@RenderBody()
</div>
</body>
</html>