问题标签 [sitemapprovider]
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-2 - 是否有支持 ASP.NET MVC 2 区域功能的 MVC SiteMap 提供程序?
我正在寻找一个 MVC SiteMap 提供程序,我也可以在其中指定区域以及控制器和操作。有没有人使用支持 MVC 2 Areas 的 SiteMap 提供程序?
asp.net-mvc - ASP.NET MVC 2 仅授权未经身份验证的用户
我试图弄清楚如何只授权未经身份验证的用户。我的站点地图中显示了一个登录选项卡,我只希望它在用户尚未登录时显示。
c# - 为不同的角色返回不同的 siteMapNodes
我正在使用我自己的SiteMapProvider
,它只是继承并稍微重写System.Web.XmlSiteMapProvider
。
我想siteMapNode
为客户和经理带来不同的回报。或者可能相同但具有不同的Title
属性。
是否可以?如果是,我该怎么做?
asp.net - XmlSiteMapProvider 如何检查用户是否处于指定角色?
我推出了自己的 SiteMapProvider 继承System.Web.XmlSiteMapProvider
。
我想覆盖检查用户是否处于 siteMapNode 属性中指定的角色的逻辑roles
:
我怎样才能做到这一点?XmlSiteMapProvider 调用哪个类的成员来检查 if securityTrimmingEnabled="true"
?
asp.net - IPrincipal 如何获得其角色?
我需要知道如何SiteMapProvider.IsAccessibleToUser()
工作。
在表单身份验证的情况下使用的内置XmlSiteMapProvider
调用。HttpContext.User.IsInRole()
System.Security.Principal.GenericPrincipal
当前用户从哪里获得其角色?哪个提供商加载此类信息?我想重载它并使用自定义逻辑。
asp.net - 是否可以使用 securityTrimmingEnabled=true 阻止页面打开
我有自定义 SiteMapProvider 和 RoleProvider 可以正常工作:如果请求的页面中未提及当前用户的角色,则IsAccessibleToUser
返回。false
SiteMapNode.Roles
所以面包屑或菜单不显示项目。
但是现在用户仍然可以直接键入显示的 URL 并打开一个页面。我怎样才能阻止这种行为?
我还有下一个 Web.config 设置:
asp.net - 配置 ASP.NET 站点地图 URL 域
我有一个这样配置的站点地图:
我有一个自定义面包屑功能,如下所示:
出于某种原因,即使在站点地图中,url 被定义为“www.website.com/index.aspx”或“home.aspx”,currentNode.URL 总是将域附加到 URL,从而创建错误的 url,例如“www.domain.com/www.website.com/index.aspx”
我试图通过搜索我的项目和我的 web.config 文件来找出 www.domain.com 的来源,但我似乎找不到它。
有什么想法或建议吗?
asp.net - 忽略自定义站点地图提供程序中的特定查询字符串参数
我已经编写了自己的 staticsitemapprovider 来构建动态站点地图。我遇到的问题是,有时页面会在查询字符串中包含我需要忽略的其他参数。
我还重写了接收 HttpContect 对象的 FindSiteMapNode 函数。有了这个,我可以简单地找到该请求的 URL 并通过上面的相同函数运行它。
然而,我的站点地图路径(绑定到站点地图)在每个页面上都没有返回任何内容。
asp.net - SiteMap 更改 SiteMapProvider?
我有一个从 web.sitemap 文件构建的自定义菜单导航,第一行类似于:
这行得通 - 它从 web.sitemap 文件中获取所有顶级节点,并允许我查看每个 SiteMapNode 并做一些事情。
但是,现在我希望能够创建多个 web.sitemap 文件,然后以编程方式确定要使用哪个 web.sitemap 文件,但我似乎不知道如何做到这一点。我假设我可以创建一个自定义 SiteMapProvider 来执行逻辑以确定要加载哪个 web.sitemap 文件,或者我有多个提供程序,每个提供程序的 SiteMapFile 属性设置为特定的 *.sitemap 文件,然后切换在我访问 SiteMap.RootNode 之前以编程方式提供程序。
我认为拥有一个自定义提供程序可能更容易,然后覆盖它查找实际物理站点地图文件位置的部分,但我不清楚我将如何做到这一点
我搜索了很多,但大多数答案似乎是关于标准站点地图路径控件等,以及如何设置 SiteMapDataSource,我认为这与我的方法无关。
asp.net-mvc-2 - 等效于 MVC 中的 ASP.NET WebForms URL 授权
我们正在考虑为我们的(相当大的)Intranet 应用程序从 WebForms 迁移到 MVC。
Intranet 应用当前使用 Windows 身份验证。对特定文件夹的授权由每个文件夹内的 web.config 文件控制。该应用程序还使用了一个菜单控件,该控件可以收集所有这些内容,并且只向用户显示他们有权查看的页面的菜单链接。所有这些功能都通过 WebForms 开箱即用。
在向 MVC 的转换方面,我认为替换此功能将成为关键挑战之一。
谁能告诉我 MVC 中有哪些工具可用于:
- 根据用户的 Active Directory 组成员身份限制用户对某些页面/视图的访问
- 为知道用户对某些页面/视图的授权的菜单生成标记
那将很有帮助。