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中存储的序列化的错误,反序列化它们,并将其传递给视图最终进行呈现。

相关内容

热门资讯

透视代打!微乐小程序免费黑科技... 透视代打!微乐小程序免费黑科技,微乐自建房脚本下载(透视)总是有挂(哔哩哔哩)1、任何微乐小程序免费...
第一分钟工具!微乐小程序黑科技... 第一分钟工具!微乐小程序黑科技,微乐河南家乡麻将辅助脚本(开挂)本来存在有挂(2026)1、每一步都...
总结辅助挂!微乐小程序黑科技,... 总结辅助挂!微乐小程序黑科技,微乐自建房运势高有什么表现(透视)本来是有挂(哔哩哔哩)微乐自建房运势...
第5分钟教程!微乐小程序黑科技... 第5分钟教程!微乐小程序黑科技,微乐游戏辅助脚本安装(开挂)其实存在有挂(2026)微乐小程序黑科技...
透视透视挂!微乐小程序黑科技,... 透视透视挂!微乐小程序黑科技,微信微乐自建房脚本免费下载(透视)果然是真的挂(哔哩哔哩)1、微信微乐...
3分钟脚本!微乐小程序黑科技,... 3分钟脚本!微乐小程序黑科技,微乐自建房脚本免费下载入口(开挂)都是存在有挂(2026);小薇(辅助...
7分钟下载!微乐小程序黑科技,... 7分钟下载!微乐小程序黑科技,万能透视辅助器免费版(开挂)一贯是真的挂(2026)1、微乐小程序黑科...
现有关情况通报如下!微乐小程序... 现有关情况通报如下!微乐小程序黑科技,微乐自建房怎么提高胜率(透视)一贯真的有挂(哔哩哔哩)1、微乐...
八分钟下载!微乐小程序免费黑科... 八分钟下载!微乐小程序免费黑科技,微信小程序 微乐陕西挖坑 外挂(开挂)原来是有挂(2026)一、微...
透视免费!微乐小程序免费黑科技... 透视免费!微乐小程序免费黑科技,微乐江苏自建房辅助app(透视)总是是有挂(哔哩哔哩)1、每一步都需...