问题标签 [mvcsitemapprovider]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc-3 - MVCSiteMapProvider 因空对象而崩溃
我正在使用 MvcSiteMapProvider 为我的网站创建菜单。它工作正常,但突然失败并出现错误:
System.NullReferenceException:对象引用未设置为对象的实例。
这是堆栈跟踪:
我想不出我为引入此错误所做的任何更改。所做的唯一更改是由于使用 StyleCop 的结果(例如更改使用顺序、方法、属性等)。任何的想法?
asp.net-mvc-2 - MvcSiteMapProvider 在“未授权”上显示节点
另一个希望相当微不足道的 mvcSiteMap 问题:
我有几个节点,我只想在用户未授权时显示,例如登录链接。我真的必须编写自己的可见性提供程序吗?
或者,是否存在表示“未授权”的 asp.net mvc 操作的过滤器属性?
干杯,达菲
asp.net-mvc-3 - 显示第一个节点的动态站点地图,而不是正确的节点
我定义了一个相当广泛的站点地图,使用静态和动态节点的混合。渲染站点地图(所有节点)时,它会将它们全部渲染为 100% 正确,但是当渲染为面包屑(在最后一个/最深的子节点上)时,它会为所有父节点和当前节点选择第一个节点!所以基本上它的菜单渲染是这样的:
- 根
- 1 级(节点 #1)
- 2 级(节点 #1)
- 3 级(节点 #1)
- 2 级(节点 #2
- 3 级(节点 #2)
- 3 级(节点 #3)
- 2 级(节点 #1)
- 1 级(节点 #1)
这一切都很好,花花公子!但是当渲染面包屑时,应该是第 3 级节点#3,它看起来像这样(L3 #1-3 相同)根 - L1 #1 - L2 #1 - L3 #1
Root 和 L1 是静态定义的,L2 和 L3 是动态定义的。它在面包屑模式下的 bot L2 和 L3 上失败,即只选择第一个节点,而不是父节点/当前节点的正确节点。
我试图在这里不提供许多实现细节,因为这将需要我发布很多代码/Xml,所以我希望我不必这样做......基本上我希望有人知道是什么原因造成的并采取补救措施!也许有一种我不知道的调试技术?
asp.net-mvc-3 - MvcSiteMap Provider 性能问题
我正在使用一个动态节点提供程序,它总共包含 6000 个节点。第一次请求包含 @Html.MvcSiteMap().SiteMapPath() 的 razor 视图时,页面最多可能需要 7500 毫秒才能加载。
时间都在此调用中占用,因为在动态节点提供程序中分析我的代码需要 28 毫秒。
如果我取出 mvc.sitemap 中的所有动态节点,代码会很快返回 280 毫秒。
有什么方法可以预加载这个 - 我正在使用 IIS 7,因此如果 IIS 7.5,则无法使用应用程序预热模块或新的应用程序启动预热部分。
我正在使用最新的 NuGet 版本 3.2.1
asp.net-mvc-3 - 使用 dynamicNodeProvider 的子节点
我使用这个项目来生成站点地图路径。
在我的应用程序中,我希望站点地图路径保持如下:
路径: Home > Projects > {project-name}
网址: /projects/{url-project}
路径: Home > Projects > {project-name} > Photos
网址: /projects/{url-project}/photos
路径: Home > Projects > {project-name} > Addresses
网址: /projects/{url-project}/addresses
路径: Home > Projects > {project-name} > Admin
网址: /projects/{url-project}/admin
尝试
为此,我创建了一个实现DynamicNodeProviderBase
mvc.sitemap
结果
路径: Home > Projects > {project-name}
网址: /projects/{url-project}
路径: Project > Photos
网址: /projects/{url-project}/photos
路径: Project > Addresses
网址: /projects/{url-project}/addresses
路径: Project > Admin
网址: /projects/{url-project}/admin
研究
在网上看,我在 stackoverflow 上找到了这个问题,但不太了解分辨率,或者它不适合我的问题。无论如何,如果这是答案,你可以给我更多关于如何实施解决方案的细节?
感谢大家的帮助!
asp.net-mvc-3 - url 重写和 mvc 导致异常
我正在使用 IIS URL Rewrite 将“/about”重写为“/home/about”。
如果我使用任何生成像“@Url.Content”或“@using(Html.BeginForm(Action, Controller)”这样的相对 url 的助手,它会给我一个例外:
重现异常非常容易,我很沮丧,我还没有找到解决方案。有任何想法吗?提前致谢。
堆栈跟踪:
asp.net-mvc - ASP.NET MVC 捕获所有参数并在其上创建站点地图
在 ASP.NET MVC 中,我有一个定义的包罗万象的路线,如下所示:
在控制器内部,我正在查询输入的产品{tags}
如下:
我正在努力解决的是如何使用MVCSiteMapProvider DynamicNodeProviderBase
类创建站点地图。
任何想法?
asp.net-mvc-3 - 使用 MVCSiteMap 仅显示根节点
我正在使用Asp.net MVC SiteMap Provider来管理我网站的站点地图。
应用结构:
这是一个小应用程序,我有一个名为“Admin”的区域
站点地图
问题
要显示主菜单,请使用以下命令:
这是第一个问题,所有节点都显示出来了。
- 我想只显示节点根(例如“INFANTIL”和“ADULTO”将不会显示)
- 无法显示管理区域的节点。它们只出现在另一个视图上。
我怎样才能完成这些任务?
问题
如何仅生成特定节点的站点地图?
示例:我想生成“ADMINISTRAÇÃO”的站点地图唯一子节点
谢谢大家!!