3 回答

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超7個(gè)贊
首先安裝官方軟件包,Unity.Mvc而不是Unity.MVC4。該軟件包會(huì)自動(dòng)安裝并注冊(cè)UnityFilterAttributeFilterProvider屬性注入依賴所需要的軟件包。您可以通過(guò)查看App_Start> UnityMvcActivator的Start方法來(lái)檢查Unity是否配置正確。您必須看到以下兩行:
public static void Start()
{
// other codes
FilterProviders.Providers.Remove(FilterProviders.Providers.OfType<FilterAttributeFilterProvider>().First());
FilterProviders.Providers.Add(new UnityFilterAttributeFilterProvider(container));
}
現(xiàn)在,您可以將[Dependency]屬性添加到過(guò)濾器的公共屬性。
public class ClaimsAuthorizeAccountAccess : AuthorizeAttribute
{
[Dependency]
public IAccountRepository AccountRepository { get; set; }
private String[] _permissions { get; set; }
public ClaimsAuthorizeAccountAccess(params String[] permissions)
{
_permissions = permissions;
}
}
- 3 回答
- 0 關(guān)注
- 704 瀏覽
添加回答
舉報(bào)