首先是定義一個類繼承actionfilterattribute類,然后重新方法onactionexecuting 編寫如下代碼
public override void onactionexecuting(actionexecutingcontext filtercontext)
{
if (!filtercontext.httpcontext.user.identity.isauthenticated)
{
//沒有登錄執(zhí)行的操作
}
else
{
//判斷是否存在角色
formsidentity user = (formsidentity)httpcontext.current.user.identity;
var au = db.adminuser.where(a => a.username == user.name).tolist();
if (au.count > 0)
{
// string purview= au[0].group.purview;
bool is_authorize = true;
string error_msg = "沒有權(quán)限訪問!";
string model = filtercontext.routedata.values["controller"].tostring();
string action = filtercontext.routedata.values["action"].tostring();
blladminuser admin_user = new blladminuser();
string purview=admin_user.getcheckpurview(model, action);//判斷權(quán)限
string mypurview = admin_user.getmypurview();
is_authorize=admin_user.inpurview(purview, mypurview);
if (!is_authorize)
{
//如果驗證不通過執(zhí)行的方法
}
}
}
}
然后在控制器或方法前面加上[authorize]驗證標記就行了。
網(wǎng)站建設,企業(yè)站SEO診斷的亞健康表現(xiàn)外貿(mào)網(wǎng)站建設快速獲取友情鏈接有哪些方法為什么站長平臺提交備案顯示您的網(wǎng)站暫未備案改進邊緣計算進行數(shù)據(jù)處理的優(yōu)秀實踐惠州SEO外鏈優(yōu)化有哪幾種形式?江蘇網(wǎng)站設計需要多少錢?企業(yè)獨立網(wǎng)站與b2b網(wǎng)站的區(qū)別網(wǎng)站收錄持續(xù)下降,找出原因是關鍵