我正在开发一个 asp.net mvc 2.0 应用程序,我想在其中实现面包屑模式,但我不知道如何在 asp.net 中实现它。通过浏览不同的站点,我开始了解 MVCSiteMap Provider,但我不知道如何使用它以及如何使用 mvcsitemap 在 asp.net mvc 2.0 中实现面包屑。请帮我。
提前致谢。
问候
我正在开发一个 asp.net mvc 2.0 应用程序,我想在其中实现面包屑模式,但我不知道如何在 asp.net 中实现它。通过浏览不同的站点,我开始了解 MVCSiteMap Provider,但我不知道如何使用它以及如何使用 mvcsitemap 在 asp.net mvc 2.0 中实现面包屑。请帮我。
提前致谢。
问候
顾名思义, MvcSiteMapProvider是 ASP.NET MVC 框架的 ASP.NET MVC SiteMapProvider 实现。它以 ASP.NET MVC 2 为目标,提供站点地图 XML 功能以及与经典 ASP.NET 站点地图控件的互操作性,例如用于呈现面包屑的 SiteMapPath 控件和菜单控件。
创建第一个站点地图
以下是一个可以与 MvcSiteMapProvider 一起使用的简单站点地图 XML 文件:
<?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" changeFrequency="Always" updatePriority="Normal">
<mvcSiteMapNode title="Browse Store" controller="Store" action="Index" />
<mvcSiteMapNode title="Checkout" controller="Checkout" />
</mvcSiteMapNode>
</mvcSiteMap>
在代码中定义站点地图节点
在某些情况下,在代码中定义站点地图节点比在站点地图 xml 文件中定义它更方便。为此,请使用 MvcSiteMapNodeAttribute 属性装饰一个操作方法。例如:
// GET: /Checkout/Complete
[MvcSiteMapNodeAttribute(Title = "Checkout complete", ParentKey = "Checkout")]
public ActionResult Complete(int id)
{
// ...
}