[英]Asp.Net MVC4 assign a supplier to aspNet UserId
我有一个MVC5应用程序,其中要求管理员将供应商分配给他们的ASP.NET用户ID登录详细信息。 这是因为供应商可以向我的应用程序注册,其中包含与已经设置的ID不同的ID。 我需要一个管理员来获取他们的供应商ID并将其分配给他们的ASP.Net用户ID。
我将供应商和用户创建到一个很好的下拉列表中。 我现在需要更新供应商ID以匹配ASP.Net用户ID
我所拥有的如下控制器:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult AssignSupplier(string supplierName, string UserName )
{
ApplicationUser user = db.Users.Where(u => u.UserName.Equals(UserName, StringComparison.CurrentCultureIgnoreCase)).FirstOrDefault();
UserManager<ApplicationUser> _userManager = new UserManager<ApplicationUser>(
new UserStore<ApplicationUser>(new ApplicationDbContext()));
// this.UserManager.ad
var supp = db.Suppliers.OrderBy(r => r.Name).ToList().Select(rr => new SelectListItem { Value = rr.Name.ToString(), Text = rr.Name }).ToList();
ViewBag.Suppliers = supp;
var users = db.Users.OrderBy(r => r.UserName).ToList().Select(rr => new SelectListItem { Value = rr.UserName.ToString(), Text = rr.UserName }).ToList();
ViewBag.Users = users;
return View("ManageUserRoles");
}
我不确定如何将AspNet用户ID重新保存到供应商表中并覆盖当前ID,可以完全做到这一点。 我通过遵循http://www.dotnetfunda.com/articles/show/2898/working-with-roles-in-aspnet-identity-for-mvc,使用了非常相似的解决方案来将用户分配给角色
我想知道是否有人可以提供帮助或建议
非常感谢马克
您是否要在Supplier
和User
之间建立一对多关系?
您的User
将需要一个Supplier
:
public class ApplicationUser
{
//...
public virtual Supplier Supplier {get;set;}
//...
}
而您的Supplier
需要User
列表
public class Supplier
{
//...
public virtual List<ApplicationUser> Users {get;set;}
//...
}
然后在控制器中,将供应商分配给用户:
public ActionResult AssignSupplier(string supplierName, string UserName )
{
ApplicationUser user = db.Users.FirstOrDefault(u => u.UserName == UserName);
Supplier supplier = db.Suppliers.FirstOrDefault(x => x.Name == supplierName);
// Assign supplier to user
user.Supplier = supplier;
// Save
db.SaveChanges();
// ...
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.