asp.net-mvc-2 – ASP.NET MVC SiteMap
我一直在努力弄清楚为什么我无法使ASP.NET MVCSiteMap工作.
我从CodePlex(版本2.3)下载了最新版本并设置了CodePlex中概述的参考.我下载了DisplayTemplates并设置了一个基本的Mvc.sitemap文件: <?xml version="1.0" encoding="utf-8" ?> <mvcSiteMap xmlns="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-2.0" enableLocalization="true"> <mvcSiteMapNode title="Dashboard" controller="Admin" action="Index" changeFrequency="Always" updatePriority="Normal"> <mvcSiteMapNode title="Users" controller="Users" action="Index" /> <mvcSiteMapNode title="Reports" controller="Reports" action="Index" /> </mvcSiteMapNode> </mvcSiteMap> 使用HTML Helper生成基本菜单时,我得到一个空白输出: <%: Html.MvcSiteMap().Menu() %> 在MenuHelperModel.ascx DisplayTemplate中,我输出节点数: <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl`1[ [MvcSiteMapProvider.Web.Html.Models.MenuHelperModel,MvcSiteMapProvider] ]" %> <%@ Import Namespace="System.Web.Mvc.Html" %> <%@ Import Namespace="MvcSiteMapProvider.Web.Html.Models" %> <%: Model.Nodes.Count %> <ul> <% foreach (var node in Model.Nodes) { %> <li><%=Html.DisplayFor(m => node)%> <% if (node.Children.Any()) { %> <%=Html.DisplayFor(m => node.Children)%> <% } %> </li> <% } %> </ul> 结果输出是: 0 我无法弄清楚我做错了什么.我没有收到任何错误,我正在使用CodePlex项目站点提供的Mvc.sitemap文件,并对我的操作/控制器进行了一些小的修改. 注意:我还下载了示例项目,但它不会为我编译,并且正在使用的站点地图文件太复杂,我无法在这个早期阶段弄清楚如何使用它. 任何帮助是极大的赞赏. 解决方法
2.3版本已准备好用于MVC3.我重新编译了新的源代码,添加了对MVC2程序集的引用,更改了两个代码行,直到我有一个工作的MvcSitemap.dll
在您的Mvc.sitemap中,我必须将命名空间更改为:
(注意最后-3.0而不是-2.0,最新版本最后是-4.0) 并确保控制器的名称与您测试它的控制器匹配,否则安全机制将阻止任何显示. 请注意,项目已移至Github,命名空间仍引用codeplex.com. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ASP.NET async /等待第2部分
- asp.net-mvc-4 – Html.RenderAction使用Post而不是Get
- asp.net – 我可以在Medium trust中创建一个可写的文件夹吗
- asp.net – 可以通过VS2015在IIS中调试/运行aspnet5应用程序
- asp.net-mvc – 版本弃用Facebook Graph API v2.2
- asp.net – 在cassandra中存储少量数据
- asp.net-mvc – 为什么ASP.NET MVC忽略了我的尾随斜杠?
- asp.net-mvc – 在不更新的其他.config文件上的AppSettings
- asp.net mvc全球化.你怎么做呢?
- 异常处理 – 如何处理WebAPI中的控制器构造函数中的异常?
- asp.net – 单语句VB.NET条件为false时执行if-bl
- asp.net-mvc-3 – 如何使用Console.WriteLine在A
- ASP.NET 5中的子域路由
- asp.net-mvc – Asp.Net MVC中的管理区域
- asp.net – 实体框架CTP5,代码优先.可选的导航属
- asp.net C# config 自定义节点及自定义节点配置以
- asp.net-mvc-4 – NReco.PdfGenerator服务器上的
- 在ASP.NET,VS2008中“无法重新格式化文档”
- Asp.net .net(C#) 获取当前命名空间,类名,方法名
- asp.net-mvc – 使用ViewModel的MVC 3动态表单