我创建的节点使用属性来定义一个项目,我将它设置在web.config扫描属性,并能正常工作。
我完全不使用的XML文件。
现在,我想添加一个动态节点提供商,我该怎么办呢?
有没有办法做到这一点没有XML(.sitemap)文件?
我需要确保它的根,它已经在代码中使用了设置下MvcSiteMapNodeAttribute
属性。
我读过的文档 ,我真的不能弄清楚在何处放置这行:
<mvcSiteMapNode
title="Details" action="Details"
dynamicNodeProvider="Project.StoreDetailsDynamicNodeProvider, Prject" />
难道这就是什么行动指向? 此外如上面所说的,根元素使用属性定义,所以我的问题是,如果有是为了避免XML的方式,或者有什么声明XML(越少越好),包括我的动态提供了有效的途径。
更新
我试过以下和节点提供商仍然没有达到( 从HomeController.cs)。
[MvcSiteMapNode(Title = "Home", Key = HomeMenuKey,
DynamicNodeProvider = "Project.Namespace.NodeProvider, Assembly")]
public ActionResult Index()
{
return View();
}