我在使用ValidationSummary(true)显示模型级错误时遇到了一些问题.如果ModelState不包含模型错误(即ModelState.AddModelError("", "Error Description"))但包含属性错误(使用数据注释添加),则会显示没有错误信息的验证摘要(当您查看源时).因此我的css显示一个空的红色框,如下所示:

如果没有属性错误,则不显示验证摘要.有了ValidationSummary(true)我会期待它只能显示验证错误,如果有模型误差.我误解了什么?
我有一个基本项目如下:
控制器:
public class HomeController : Controller
{
public ViewResult Index()
{
return View();
}
[HttpPost]
public ActionResult Index(IndexViewModel model)
{
return View();
}
}
Run Code Online (Sandbox Code Playgroud)
模型:
public class IndexViewModel
{
[Required]
public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
视图:
@model IndexViewModel
@Html.ValidationSummary(true)
@using(@Html.BeginForm())
{
@Html.TextBoxFor(m => m.Name)
<input type="submit" value="submit" />
}
Run Code Online (Sandbox Code Playgroud) 我需要在ASP.NET MVC应用程序中显示确认数据库更新成功的消息.目前,应用程序仅在发生错误时显示消息(使用ValidationSummary助手).在成功操作时,应用程序当前重定向到导航中的合适点.
目标是:
我的偏好是提交按钮附近的某种工具提示类型的消息显示,然后是一个删除消息并在成功后继续现有重定向的机制.
这似乎表明Ajax调用而不是现有的HTTP POST来提交表单.我该怎么做?