如何使用MVC 5进行服务器端验证

托比·夏普

我正在为慈善机构在一个简单的拍卖网站上工作。我有一个用于销售项目的项目模型,以及一个“投标”视图,用户可以在其中输入出价并提交。该出价是在Item控制器内收到的:

    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Bid(int itemID, int bidAmount)
    {
        if (ModelState.IsValid)
        {
            Item item = db.Items.Find(itemID);
            if (bidAmount >= item.NextBid)
            {
                item.Bids++;
                item.CurrentBid = bidAmount;
                item.HighBidder = HttpContext.User.Identity.Name;
                db.Entry(item).State = EntityState.Modified;
                db.SaveChanges();
            }
            else
            {
                // Already outbid
            }
            return View(item);
        }
        return RedirectToAction("Auction");
    }

我想知道如何向用户显示服务器端验证。例如,在上面的代码中,可能是提交的出价金额不再足够。在这种情况下,我想向用户显示一条消息,说他们的出价已经过高等。

如何将该信息传递回视图以显示适当的消息?我希望用户看到与以前相同的项目页面视图,更新编辑框中的值并显示消息-类似于eBay。谢谢。

安德烈·克雷默(Andre Kraemer)

您应该查看ModelState属性的AddModelError方法。

   [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Bid(int itemID, int bidAmount)
    {
        if (ModelState.IsValid)
        {
            Item item = db.Items.Find(itemID);
            if (bidAmount >= item.NextBid)
            {
                item.Bids++;
                item.CurrentBid = bidAmount;
                item.HighBidder = HttpContext.User.Identity.Name;
                db.Entry(item).State = EntityState.Modified;
                db.SaveChanges();
            }
            else
            {
                // Already outbid
                ModelState.AddModelError("", "Already outbid");
            }
            return View(item);
        }
        return RedirectToAction("Auction");
    }

要在视图中显示消息,您需要一个ValidationSummary

@ Html.ValidationSummary(true)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Play Framework进行客户端/服务器端验证

来自分类Dev

Google reCAPTCHA:如何在服务器端获得用户响应并进行验证

来自分类Dev

如何进行跨实体服务器端验证

来自分类Dev

在客户端上使用Angular进行服务器端表单验证

来自分类Dev

PHP/JQuery/AJAX 表单 - 仅使用内联错误样式进行服务器端验证

来自分类Dev

使用多个表单字段进行服务器端验证

来自分类Dev

如何在Ajax调用上对服务器发送的值进行服务器端验证

来自分类Dev

MVC 4服务器端验证未显示

来自分类Dev

如何使用Ajax在ASP.NET MVC上显示服务器端验证错误

来自分类Dev

如何使用 Jquery 在 Ajax 调用中调用 Mvc 服务器端验证

来自分类Dev

如何验证Google身份服务器端

来自分类Dev

如何验证android计费收据服务器端

来自分类Dev

如何验证android计费收据服务器端

来自分类Dev

如何验证Google身份服务器端

来自分类Dev

如何验证 Facebook 用户令牌服务器端

来自分类Dev

使用Apple登录:在服务器端验证令牌

来自分类Dev

使用Firebase进行服务器端计算

来自分类Dev

使用DataTables进行服务器端分页

来自分类Dev

使用Hapi进行服务器端响应缓存

来自分类Dev

如何在不使用JS库的情况下通过Facebook服务器端进行身份验证

来自分类Dev

使用jQuery成功进行客户端验证后,如何提交html表单以进行服务器端验证?

来自分类Dev

如何在blazor Webassembly项目的服务器端控制器中对用户进行身份验证?

来自分类Dev

使用Firebase机密使用HTTP POST请求对Firebase服务器端进行身份验证

来自分类Dev

使用Firebase机密使用HTTP POST请求对Firebase服务器端进行身份验证

来自分类Dev

在Android上使用Google Plus登录在服务器端对用户进行身份验证

来自分类Dev

如何强制服务器端验证而不是仅客户端验证?

来自分类Dev

如何在ASP.NET Core 3.1 MVC中进行RequiredIf客户端和服务器端验证?

来自分类Dev

如何从引导程序模式中清除服务器端MVC模型验证错误?

来自分类Dev

使用jquery填充的值在服务器端验证mvc4上丢失

Related 相关文章

  1. 1

    使用Play Framework进行客户端/服务器端验证

  2. 2

    Google reCAPTCHA:如何在服务器端获得用户响应并进行验证

  3. 3

    如何进行跨实体服务器端验证

  4. 4

    在客户端上使用Angular进行服务器端表单验证

  5. 5

    PHP/JQuery/AJAX 表单 - 仅使用内联错误样式进行服务器端验证

  6. 6

    使用多个表单字段进行服务器端验证

  7. 7

    如何在Ajax调用上对服务器发送的值进行服务器端验证

  8. 8

    MVC 4服务器端验证未显示

  9. 9

    如何使用Ajax在ASP.NET MVC上显示服务器端验证错误

  10. 10

    如何使用 Jquery 在 Ajax 调用中调用 Mvc 服务器端验证

  11. 11

    如何验证Google身份服务器端

  12. 12

    如何验证android计费收据服务器端

  13. 13

    如何验证android计费收据服务器端

  14. 14

    如何验证Google身份服务器端

  15. 15

    如何验证 Facebook 用户令牌服务器端

  16. 16

    使用Apple登录:在服务器端验证令牌

  17. 17

    使用Firebase进行服务器端计算

  18. 18

    使用DataTables进行服务器端分页

  19. 19

    使用Hapi进行服务器端响应缓存

  20. 20

    如何在不使用JS库的情况下通过Facebook服务器端进行身份验证

  21. 21

    使用jQuery成功进行客户端验证后,如何提交html表单以进行服务器端验证?

  22. 22

    如何在blazor Webassembly项目的服务器端控制器中对用户进行身份验证?

  23. 23

    使用Firebase机密使用HTTP POST请求对Firebase服务器端进行身份验证

  24. 24

    使用Firebase机密使用HTTP POST请求对Firebase服务器端进行身份验证

  25. 25

    在Android上使用Google Plus登录在服务器端对用户进行身份验证

  26. 26

    如何强制服务器端验证而不是仅客户端验证?

  27. 27

    如何在ASP.NET Core 3.1 MVC中进行RequiredIf客户端和服务器端验证?

  28. 28

    如何从引导程序模式中清除服务器端MVC模型验证错误?

  29. 29

    使用jquery填充的值在服务器端验证mvc4上丢失

热门标签

归档