ASP.NETMVC中,如何将模型验证错误持久化并发送到另一个方法中?”
创始人
2024-11-12 05:00:31
0

在ASP.NET MVC中,我们可以使用ModelState来捕获和记录来自模型验证器的错误。然后,我们可以将这些错误传递给需要它们的其他方法。

以下是一个示例:

在控制器中,请确保对模型进行了验证,并记录任何验证错误:

[HttpPost]
public ActionResult MyAction(MyModel model)
{
    if (!ModelState.IsValid)
    {
        TempData["MyErrorMessage"] = ModelState.SerializeErrors();
        return RedirectToAction("Error");
    }

    // 如果模型验证没问题的话,处理它
    // ...

    return RedirectToAction("Index");
}

在上述代码中,如果模型验证失败,我们将模型状态中的错误序列化,并将其存储在TempData中。然后,我们将返回一个重定向到'Error”操作。

在目标方法中,我们可以检索这些错误并对其进行处理:

public ActionResult Error()
{
    var serializedErrors = TempData["MyErrorMessage"] as string;

    if (serializedErrors == null)
    {
        return RedirectToAction("Index");
    }

    var errors = ModelState.DeserializeErrors(serializedErrors);

    // 现在,您可以根据需要处理这些错误

    return View();
}

在上述代码中,我们检索了TempData中存储的序列化的错误,反序列化它们,并将其传递给视图最终进行呈现。

相关内容

热门资讯

透视透视!wepoker透视脚... 透视透视!wepoker透视脚本苹果版,wpk辅助器,AA德州教程(固有真的有挂);致您一封信;亲爱...
透视脚本!hhpoker开辅助... 透视脚本!hhpoker开辅助软件,德普辅助器辅助器怎么用,软件教程(素来真的有挂);科技安装教程;...
透视模拟器!aapoker辅助... 透视模拟器!aapoker辅助工具存在吗,拱趴大菠萝作弊方法,必赢教程(切实真的是有挂)1、每一步都...
透视了解!wpk辅助器,来玩a... 1、透视了解!wpk辅助器,来玩app破解版,2025教程(竟然真的有挂)(UU poker、wpk...
透视透视挂!wepoker脚本... 透视透视挂!wepoker脚本,pokemmo脚本手机版,2025新版教程(先前是有挂)1、不需要A...
透视ai代打!wepoker免... 透视ai代打!wepoker免费永久脚本,wepoker怎么破解游戏,科技教程(其实真的是有挂);(...
透视模拟器!红龙poker透视... 透视模拟器!红龙poker透视,哈糖大菠萝攻略,第三方教程(一向真的有挂);超受欢迎的红龙poker...
透视ai代打!wepoker免... 透视ai代打!wepoker免费透视脚本,购买wepoker模拟器,2025新版总结(都是有挂)准备...
透视好牌!aapoker透视脚... 您好,aapoker透视脚本安装包这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302...
透视美元局!wepoekr底牌... 大家肯定在之前wepoker底牌透视脚本或者wepoker底牌透视脚本中玩过透视美元局!wepoek...