在我的AspNetRoles表中,我有两个角色
1 | HEI_Admin
2 | HEI_User
这是我的View Class下拉列表,用于在用户注册时选择用户角色
<div>
@Html.DropDownListFor(model => model.RoleName,
new SelectList(
new List<Object>{
new { value = "" , text = "Select" },
new { value = "HEC_Admin" , text = "Higher Edcuation Council" },
new { value = "HEI_User" , text = "Higher Education Institute"}
}, "value", "text", "-"), new { id = "allDay" })
@Html.ValidationMessageFor(model => model.RoleName)
</div>
这是以上下拉列表的前端Javascript
<script>
$("#allDay").change(function () {
if ($(this).val() == "HEC_Admin") {
$("#University").attr("disabled", true);
$("#Direct_Number").attr("disabled", true);
$("#Mobile").attr("disabled", true);
}
else if($(this).val() == "HEI_User") {
$("#University").attr("disabled", false);
$("#Direct_Number").attr("disabled", false);
$("#Mobile").attr("disabled", false);
}
});
</script>
这是我称之为模型类
的地方 public class RegisterViewModel
{
// rest of
public string Name { get; set; }
}
这是我在用户注册
时为用户分配角色的地方 public async Task<ActionResult> Register(RegisterViewModel model)
{
if (ModelState.IsValid)
{
var user = new ApplicationUser() { UserName = model.UserName} ;
user.Email = model.Email;
user.ConfirmedEmail = false;
Roles.AddUserToRole(model.UserName, model.Name);
var result = await UserManager.CreateAsync(user, model.Password);
if (result.Succeeded)
{
当我使用网页会员资格时,此程序运作正常,但在这里我使用的是AspNet会员资格,这里我收到了以下错误
建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接