您好我是MVC和EF的新手,所以这可能是一个非常简单的问题,但是防止用户尝试输入重复记录的最佳方法是什么?MVC实体框架验证,以防止重复记录
我有一个简单的查找表,其中一列是主键。我正在创建一个维护屏幕,以便管理员可以将额外的项目添加到查找列表中。我的控制器看起来像:
public ActionResult Index(string NewRow)
{
try
{
CaseType t = new CaseType { ID = NewRow };
if (ModelState.IsValid)
{
UOW.CaseTypes.Add(t);
UOW.Save();
}
}
catch (Exception ex)
{
ModelState.AddModelError("", ex.Message);
}
return View(UOW.CaseTypes.All());
}
停靠重复的记录,并停止死亡的黄色屏幕,但显示的信息是:“在更新条目中出现错误详细信息请参见内部异常。”这对用户不利。
我只是想知道是否有更好的方法来捕捉错误。
嗯......我的回答不会帮你? –
非常感谢,我正计划删除它刚刚开发的错误屏幕,但感谢顶尖提示。 – Jammy
嗨,刚刚解决这个问题,而你的代码是有用的,它并没有真正实现我所期待的。它似乎只是在表单数据中寻找一个字段并添加验证消息。我正在寻找是一种检查重复的方法,例如,如果我已经在表中有案例类型“22”,并且在某个时刻用户试图创建另一个“22”,系统应该说“对不起这是重复的”而不是“死亡”的黄色屏幕。只是想知道如果我应该首先运行一个“查找”数据或捕获服务器上的紧张性较小的错误? – Jammy