0
私はboolを返すコントローラにメソッドを持っていますが、_Layout.cshtmlの値を使用したいと思います。戻り値に基づいて、あなたが混合されているようにそれはそうなので_Layout.cshtmlから偽のheadタグ_layoutページのbool戻り値型のコントローラメソッドの呼び出し
私はboolを返すコントローラにメソッドを持っていますが、_Layout.cshtmlの値を使用したいと思います。戻り値に基づいて、あなたが混合されているようにそれはそうなので_Layout.cshtmlから偽のheadタグ_layoutページのbool戻り値型のコントローラメソッドの呼び出し
に、私は少し混乱している場合、別のアクション
[HttpGet]
public bool CheckPagePermission(PagePermissionDto pagePermission)
{
var claimsIdentity = System.Web.HttpContext.Current.User.Identity as ClaimsIdentity;
var userName = claimsIdentity.FindFirst("email")?.Value;
pagePermission.UserName = userName;
bool authorizedUser = _uow.PagePermissions.CheckPagePermission(pagePermission);
return authorizedUser;
}
は今、私は上記の値をチェックし、エラーページにリダイレクトしたいと思いますクレームと伝統的な認可技術。私はあなたが単にClaimsTranformerを使用し、ClaimsAuthorizationManagerをサブクラス化できると思います。これは別の何かであり、あなたが簡単に何かをしたい場合は、その後、多分あなたは、カスタム認可属性にしたい
あなたはこの
public class MyCustomAuthorizeAttribute : AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
var claimsIdentity = System.Web.HttpContext.Current.User.Identity as ClaimsIdentity;
var userName = claimsIdentity.FindFirst("email")?.Value;
return _uow.PagePermissions.CheckPagePermission(new pagePermission { /*whatever you are passing here.*/ });
}
}
グレート情報here
私はあなたが単に '[必要な推測のような何かができますHtml.Action'](https://stackoverflow.com/questions/8874775/how-can-i-use-html-action) – Givi
なぜこれのためのアクションフィルタを書いていませんか? – Fran
@Fran – DoIt