小编Rus*_*hah的帖子

在asp.net mvc中提供动态角色(角色不固定,不断更新)

我知道简单的角色提供者,如果我需要限制特定的操作,我必须简单地编写Authorize(Roles ="Admin")或者如果我需要限制视图的特定部分,我会写@if(User.IsInRole("管理员")).

但我的问题是,如果我的角色没有修复并存储在数据库中,我的超级管理员可以编辑和删除它们.

我的要求是superadmin可以添加,更新,删除角色,还可以创建不同的用户并维护这些用户的角色.

我做了很多谷歌搜索,发现如下内容

    [AttributeUsage (AttributeTargets.Method|AttributeTargets.Class,Inherited = true,AllowMultiple=true) ]
    public class CustomRole : AuthorizeAttribute
    {
        protected override bool AuthorizeCore(HttpContextBase context)
        {
            Respository db = new Respository();
            if (db.UserMasters.Where(x => x.user_name == context.User.Identity.Name).Count() > 0)
            {
                return true;
            }
            else { return false; }
        }
    }
Run Code Online (Sandbox Code Playgroud)

在这里,我可以使用此代码来授权操作方法如下

    [CustomRole]
    public ActionResult Details(int id = 0)
    {
        Employee employee = db.Employees.Find(id);
        if (employee == null)
        {
            return HttpNotFound();
        }
        return View(employee);
    }
Run Code Online (Sandbox Code Playgroud)

这里我的这个动作方法受到保护,但如果我想通过这个自定义方法保护视图的某些部分该怎么办.如何使用此功能实现User.IsInRole("Admin")的功能?

asp.net razor asp.net-mvc-3 asp.net-mvc-4 asp.net-mvc-5

7
推荐指数
2
解决办法
3367
查看次数

如何在文本框中获得水平线光标(就像在命令行上一样)?

我有客户端的要求,其中我需要将所有类型为“文本”的输入标签的光标显示为水平光标,因为光标出现在命令提示符中。

在此输入图像描述

我认为在 jQuery 的帮助下这可能是可能的。

html javascript jquery

0
推荐指数
1
解决办法
2766
查看次数