
[英]How to get the Number of ApplicationUser in the AspNetUsers Table in ASP.Net MVC 5?
[英]ASP.NET how to access AspNetUsers table and return values
我成功地在 AspNetUsers 表中添加了一些字段,但我不知道如何检索它们。 我的项目是asp.net web api,我可以从令牌中检索用户名。 我想通过给定的用户 ID 或用户名返回部门 ID。 并尝试像但这给了我无效的例外
private ApplicationUserManager _userManager;
public int GetdeptId(string username)
{
var dept = _userManager.Users.Where(d => d.UserName == username).Select(c => c.DepartmentId).FirstOrDefault();
return dept;
}
这是我在 AspNetUsers 中创建字段的方法,我可以成功插入值。 问题是从 AspNetUsers 返回值。
public class RegisterBindingModel
{
[Required]
[Display(Name = "Email")]
public string Email { get; set; }
[Required]
[Display(Name = "FirstName")]
public string FirstName { get; set; }
[Required]
[Display(Name = "Lastname")]
public string Lastname { get; set; }
[Required]
[Display(Name = "Department")]
public int DepartmentId { get; set; }
[Required]
[StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[DataType(DataType.Password)]
[Display(Name = "Confirm password")]
[Compare("Password", ErrorMessage = "The password and confirmation password do not match.")]
public string ConfirmPassword { get; set; }
}
然后注册
public async Task<IHttpActionResult> Register(RegisterBindingModel model)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
var user = new ApplicationUser() { UserName = model.Email, Email = model.Email, Firstname = model.FirstName, LastName = model.Lastname, DepartmentId = model.DepartmentId };
IdentityResult result = await UserManager.CreateAsync(user, model.Password);
if (!result.Succeeded)
{
return GetErrorResult(result);
}
return Ok();
}
先感谢您!
尝试!
var context = new IdentityDbContext();
var users = context.Users.ToList();
如果您可以像 _db 那样访问 ApplicationDbContext,那么您可以将其转换为 IdentityDbContext 并通过它访问表。 例如IdentityDbContext context = _db as IdentityDbContext;
IEnumerable<User> users = context.Users;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.