c# – 自定义授权属性不工作的asp.net
发布时间:2020-12-15 23:45:43 所属栏目:百科 来源:网络整理
导读:在我的c#app中,我添加了这样的自定义属性 public class CheckLogIn : AuthorizeAttribute{ protected override bool AuthorizeCore(HttpContextBase httpContext) { if (!httpContext.Request.IsAuthenticated) return false; return (Auth.UserLoggedIn ||
在我的c#app中,我添加了这样的自定义属性
public class CheckLogIn : AuthorizeAttribute { protected override bool AuthorizeCore(HttpContextBase httpContext) { if (!httpContext.Request.IsAuthenticated) return false; return (Auth.UserLoggedIn || Auth.AdminLoggedIn); } } 我这样称呼这个属性 [CheckLogIn] public dynamic Create(String projectName,String organizationId) { Project pro = Project.Create(organizationId,projectName).Save(); return new { organizationId = pro.OrganizationId,name = pro.Name,id = pro.Id }; } AuthorizeCore未被调用.我有一个突破点,但似乎它永远不会被调用.我在这里错过了什么吗? 我试过从它运行的常规控制器调用[CheckLogIn],从api控制器调用它. 解决方法
WebApi的
System.Web.Http.AuthorizeAttribute与MVC的
System.Web.Mvc.AuthorizeAttribute不同.
它不能与WebApi一起使用的原因是因为WebApi不了解MVC类型.您需要创建一个为此目的继承System.Web.Http.AuthorizeAttribute的类型. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- c# – Facebook login throws“应用程序配置不允许给定URL:
- 微信小程序获取当前经纬度并逆解析地址代码
- 13 More Effective C++—条款18(超前分期计算)
- c – 在windbg中,如何在kernel32.dll中的所有函数上设置断点
- Objective-C = operator vs stringWithString / arrayWithA
- SQLite 3.7.13的加密解密(二)―― 开放宏定义
- oracle 11g的警告日志和监听日志的删除方法
- c# – WPF应用程序中的事件冒泡
- 12 react 基础 的 css 过渡动画 及 动画效果 及 使用 react
- source insight研究——正则表达式篇