C# ASP.NET核心MVC-基于用户角色启用或禁用dropdownlist控件
两个下拉列表我们有所有角色。用户注册为“艺术家”或“个人用户”,另一个下拉列表管理员可以注册或编辑从该下拉列表中选择的所有类型的角色。所以,创建2个下拉列表,一个是从用户一管理员,但问题是管理员登录后,当我去注册页面有2个下拉列表显示(我管理用户部分有一个下拉列表显示,因为相同的身份注册页面)。所以,我想禁用或隐藏该用户下拉列表 如果这是不可能的,您能告诉我使用一个dropdownlist可以根据用户角色筛选项目吗C# ASP.NET核心MVC-基于用户角色启用或禁用dropdownlist控件,c#,html,asp.net-core-mvc,C#,Html,Asp.net Core Mvc,两个下拉列表我们有所有角色。用户注册为“艺术家”或“个人用户”,另一个下拉列表管理员可以注册或编辑从该下拉列表中选择的所有类型的角色。所以,创建2个下拉列表,一个是从用户一管理员,但问题是管理员登录后,当我去注册页面有2个下拉列表显示(我管理用户部分有一个下拉列表显示,因为相同的身份注册页面)。所以,我想禁用或隐藏该用户下拉列表 如果这是不可能的,您能告诉我使用一个dropdownlist可以根据用户角色筛选项目吗 Register.cshtml(身份用户页) 在进入注册页面之前,用户是否已登录
Register.cshtml
(身份用户页)
在进入注册页面之前,用户是否已登录?
<div class="row">
<div class="col-md-4">
<form asp-route-returnUrl="@Model.ReturnUrl" method="post">
<h4>Create a new account.</h4>
<div asp-validation-summary="All" class="text-danger"></div>
<div id="user" class="form-group">
<label asp-for="Input.Role"></label>
@Html.DropDownListFor(m => m.Input.Role, Model.Input.RoleList1,
String.Empty, new { @class = "form-control" })
</div>
@if (User.IsInRole(SD.Role_Admin) || User.IsInRole(SD.Role_SuperAdmin))
{
<div class="form-group">
<label asp-for="Input.Role"></label>
@Html.DropDownListFor(m => m.Input.Role, Model.Input.RoleList,
"-Please select a role", new { @class = "form-control" })
</div>
}
</form>
</div>
</div>
namespace ArtGallery.Areas.Identity.Pages.Account
{
[AllowAnonymous]
public class RegisterModel : PageModel
{
//...
public async Task OnGetAsync(string returnUrl = null)
{
ReturnUrl = returnUrl;
Input = new InputModel()
{
RoleList = _roleManager.Roles
.Select(x => x.Name)
.Select(i => new SelectListItem
{
Text = i,
Value = i
}),
RoleList1 = _roleManager.Roles
.Where(u => u.Name != SD.Role_Admin &&
u.Name != SD.Role_SuperAdmin)
.Select(x => x.Name)
.Select(i => new SelectListItem
{
Text = i, Value = i
})
};
ExternalLogins = (await _signInManager.GetExternalAuthenticationSchemesAsync()).ToList();
}
}
}