我有一个小问题,希望你能帮我解决。
我正在使用MvcSiteMapProvider
,并且我想使用通过服务接口访问数据库来定义每个节点的可见性。
public class AreaSiteMapNodeVisibilityProvider : MvcSiteMapProvider.Extensibility.ISiteMapNodeVisibilityProvider
{
[Inject]
public ISecurityService _SecurityService {get;set;}
public AreaSiteMapNodeVisibilityProvider()
{
}
public bool IsVisible(SiteMapNode node, HttpContext context, IDictionary<string, object> sourceMetadata)
{
MvcSiteMapNode thisNode = node as MvcSiteMapNode;
return _SecurityService.CalculateNodeVisibility(thisNode,context.Cache["someValueIHaveStoredHere"])
}
}
但是,我的_SecurityService
会员始终是null
. 有什么建议么?我接受任何类型的指示,包括摆脱注射并另辟蹊径。