我有一个自定义SiteMapProvider
,我从数据库填充。我还有一个自定义SiteMapNode
,必须使用自定义Page
参数构建。
SiteMapProvider.IsAccessibleToUser(context, node)
的实施现在是:
Public Overrides Function IsAccessibleToUser(context, node) As Boolean
Return CType(node, CustomSiteMapNode).Page.IsAccessibleToUser(context.User)
End Function
我也有自定义authentication class-attribute
:
Public Class ValidateAuthorization : Inherits AuthorizeAttribute
Public Sub New()
End Sub
Protected Overrides Function AuthorizeCore(context) As Boolean
If Not CType(SiteMap.CurrentNode, JrcSiteMapNode).Page.IsAccessibleToUser(httpContext.User) Then
Throw New ApplicationException()
End If
Return True
End Function
End Class
两个问题:
Page
对象只加载一次的功能,所以我需要将它们存储在某个地方...... 我很困惑/心理阻塞。答案 0 :(得分:0)
我目前有2个站点地图。一个用,一个没有启用安全修整。