2

我正在学习 MVC3 和 EF4.1 。我目前正在尝试使用新的 TT4 生成器使用 Database first EF 来生成精益数据类。我已经生成了一个 CRUD 控制器,并且遇到了如何最好地在视图中显示数据库约束消息的问题。

我的代码到目前为止:

    [HttpPost]
    public ActionResult Delete(Guid id, aspnet_Users User)
    {
        string errorMessage = string.Empty;
        try
        {
            // TODO: Add delete logic here
            db.Entry(User).State = System.Data.EntityState.Deleted;
            db.SaveChanges();
            return RedirectToAction("Index");
        }
        catch(Exception err)
        {
            return Content(err.InnerException.StackTrace);
            //return View();
        }
    }

非常感谢任何帮助。

埃德

4

1 回答 1

4

最简单的事情之一是在异常消息中添加模型错误。这实质上将违反约束视为验证错误。但是,您可能应该为用户自定义消息。

[HttpPost]
public ActionResult Delete(Guid id, aspnet_Users User)
{
    try
    {
        // TODO: Add delete logic here
        db.Entry(User).State = System.Data.EntityState.Deleted;
        db.SaveChanges();
        return RedirectToAction("Index");
    }
    catch(Exception err)
    {
        ModelState.AddModelError(String.Empty, err.Message);
        return View(User);
    }
}
于 2012-04-27T14:44:21.237 回答