【发布时间】:2015-11-12 18:51:28
【问题描述】:
我对 MVC5 和 .NET 非常陌生。我正在使用 ASP 应用程序用户并有一个附加表 Patient:
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid PatientId { get; set; }
[ForeignKey("User")]
[Display(Name = "User Id")]
public string UserId { get; set; }
public virtual ApplicationUser User { get; set; }
我的 AccountController 是:
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Register(RegisterViewModel model)
{
if (ModelState.IsValid)
{
var user = new ApplicationUser
{
UserName = model.Email,
Email = model.Email,
Title = model.Title,
FirstName = model.FirstName,
LastName = model.LastName,
DOB = model.DOB,
Gender = model.Gender,
ContactNumber = model.ContactNumber,
Address1 = model.Address1,
Address2 = model.Address2,
Address3 = model.Address3,
County = model.County,
Postcode = model.Postcode
};
var result = await UserManager.CreateAsync(user, model.Password);
if (result.Succeeded)
{
//Create patient ID
Patient patient = new Patient();
patient.PatientId = Guid.NewGuid();
patient.UserId = user.Id;
db.Patients.Add(patient);
await SignInManager.SignInAsync(user, isPersistent:false, rememberBrowser:false);
return RedirectToAction("Index", "Home");
}
AddErrors(result);
}
return View(model);
}
我正在尝试在注册时创建一个患者实例,该实例将生成一个患者 ID 以及参考外键用户 ID。但是,当我在注册中注册新用户时,不会创建相应的患者。 任何建议将不胜感激。
谢谢
【问题讨论】:
标签: c# asp.net database visual-studio-2013 asp.net-mvc-5