C# 如何将ASP.NET MVC5错误消息重新格式化为仅显示C中的第一条消息#

C# 如何将ASP.NET MVC5错误消息重新格式化为仅显示C中的第一条消息#,c#,asp.net-mvc,asp.net-mvc-5,C#,Asp.net Mvc,Asp.net Mvc 5,我有以下代码,我认为这些代码将向我显示模型中的每个错误: @if (!ViewData.ModelState.IsValid) { <ul> @foreach (string key in ViewData.ModelState.Keys) { @foreach (var error in ViewData.ModelState[key].Errors) { <li>@error.ErrorM

我有以下代码,我认为这些代码将向我显示模型中的每个错误:

@if (!ViewData.ModelState.IsValid)
{
    <ul>
    @foreach (string key in ViewData.ModelState.Keys)
    {
        @foreach (var error in ViewData.ModelState[key].Errors)
        {
            <li>@error.ErrorMessage</li>
        }
    }
    </ul>
}
@if(!ViewData.ModelState.IsValid)
{
    @foreach(ViewData.ModelState.Keys中的字符串键) { @foreach(ViewData.ModelState[key]中的var错误。错误) {
  • @error.ErrorMessage
  • } }
}
代码是嵌入在网页中的C#。有人能告诉我,我怎样才能报告第一条消息,并在
中报告这条消息

以及助手实现:

public static class HtmlHelpers
{
    public static IHtmlString FirstModelError(this HtmlHelper html)
    {
        var modelState = html.ViewData.ModelState;
        if (modelState.IsValid)
        {
            return MvcHtmlString.Empty;
        }

        var span = new TagBuilder("span");
        string errorMessage = modelState
            .First(x => x.Value.Errors.Any())
            .Value
            .Errors
            .First()
            .ErrorMessage;

        span.SetInnerText(errorMessage);
        return new HtmlString(span.ToString());
    }
}
以及助手实现:

public static class HtmlHelpers
{
    public static IHtmlString FirstModelError(this HtmlHelper html)
    {
        var modelState = html.ViewData.ModelState;
        if (modelState.IsValid)
        {
            return MvcHtmlString.Empty;
        }

        var span = new TagBuilder("span");
        string errorMessage = modelState
            .First(x => x.Value.Errors.Any())
            .Value
            .Errors
            .First()
            .ErrorMessage;

        span.SetInnerText(errorMessage);
        return new HtmlString(span.ToString());
    }
}
public static class HtmlHelpers
{
    public static IHtmlString FirstModelError(this HtmlHelper html)
    {
        var modelState = html.ViewData.ModelState;
        if (modelState.IsValid)
        {
            return MvcHtmlString.Empty;
        }

        var span = new TagBuilder("span");
        string errorMessage = modelState
            .First(x => x.Value.Errors.Any())
            .Value
            .Errors
            .First()
            .ErrorMessage;

        span.SetInnerText(errorMessage);
        return new HtmlString(span.ToString());
    }
}