【发布时间】:2019-03-17 19:31:18
【问题描述】:
我的数据库中有两个表:referents 和 users。
Referents:
FirstName|LastName|Phone|Password|ConfirmPassword|UserName|Email
还有
Users:
FirstName|LastName|UserRole|Password|ConfirmPassword|UserName
目前我的控制器中的Create 方法看起来像:
// GET: Referents/Create
public ActionResult Create()
{
return View();
}
// POST: Referents/Create
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "ReferentID,FirstName,LastName,Phone,Email,Password,ConfirmPassword")] Referents referents)
{
if (ModelState.IsValid)
{
db.Referents.Add(referents);
db.SaveChanges();
return RedirectToAction("Index");
}
return View(referents);
}
很明显,现在我只填充 Referents。
如何同时用某些数据(用户名、姓氏、用户名)填充Users 表?
在UserRole 列中我想写字符串“referent”。
EDIT 添加模型: 参考:
namespace StudentService.Models
{
public class Referents
{
[Key]
public int ReferentID { get; set; }
[Required(ErrorMessage = "Морате унети име!")]
public string FirstName { get; set; }
[Required(ErrorMessage = "Презиме је обавезно!")]
public string LastName { get; set; }
[Required(ErrorMessage = "Корисничко име је обавезно!")]
[Index(IsUnique = true)]
public string UserName { get; set; }
[Required(ErrorMessage = "Унесите исправан број телефона.")]
[DataType(DataType.PhoneNumber)]
public string Phone { get; set; }
[Required(ErrorMessage = "Унесите исправну адресу електронске поште.")]
[DataType(DataType.EmailAddress)]
public string Email { get; set; }
[Required(ErrorMessage = "Шифра је обавезна!")]
[DataType(DataType.Password)]
public string Password { get; set; }
[Compare("Password", ErrorMessage = "Морате потврдити лозинку!")]
[DataType(DataType.Password)]
public string ConfirmPassword { get; set; }
}
}
【问题讨论】:
-
用户名字段是唯一键吗?这两个表(引用者和用户)在数据库中是否使用外键相关?
标签: sql asp.net asp.net-mvc database