Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 具有数据权限的Asp.Net MVC模型验证_Asp.net Mvc_Security_Validation_Model - Fatal编程技术网

Asp.net mvc 具有数据权限的Asp.Net MVC模型验证

Asp.net mvc 具有数据权限的Asp.Net MVC模型验证,asp.net-mvc,security,validation,model,Asp.net Mvc,Security,Validation,Model,我在UI上有一个下拉列表,其中包含从数据库填充的数据。我有两个角色:用户和管理员。 如果用户没有访问以下数据的权限,我们是否可以根据模型属性显示错误 [permission] public details {get; set; } 我试图向用户显示验证消息,就像您没有访问下拉列表的权限一样。如果我可以使用[授权]并显示错误消息,您能告诉我一些想法吗 我不知道在你的应用程序中如何控制权限。您可以在这里找到实现该目标的灵感: 在这里: 根据角色权限限制对用户控件的访问的最原始方法是对不受欢迎的用户

我在UI上有一个下拉列表,其中包含从数据库填充的数据。我有两个角色:用户和管理员。 如果用户没有访问以下数据的权限,我们是否可以根据模型属性显示错误

[permission]
public details {get; set; }
我试图向用户显示验证消息,就像您没有访问下拉列表的权限一样。如果我可以使用[授权]并显示错误消息,您能告诉我一些想法吗

我不知道在你的应用程序中如何控制权限。您可以在这里找到实现该目标的灵感:

在这里:

根据角色权限限制对用户控件的访问的最原始方法是对不受欢迎的用户隐藏控件:

@if(User.IsInRole("Admin")) {
    @Html.DropdownListFor(
        expression: m => m.SelectedItemId, 
        selectList: Model.YourCollection, 
        optionLabel: "some text"
    )
}

您还可以使用如下属性

public class FVAuthorizeAttribute : AuthorizeAttribute
{
    private readonly bool _authorize;
    private readonly string[] _roles;

    public FVAuthorizeAttribute()
    {
        _authorize = true;
    }



}
然后使用类似

[FVAuthorizeRoles=管理员,创建下拉菜单的方法的名称]

公共详细信息{get;set;}