我正在尝试构建一个可以执行此逻辑的助手:

if (ViewData.ModelState[""] != null && ViewData.ModelState[""].Errors.Any())
{
    <div class="note note-danger">
        <h4 class="block">Errors</h4>
        <p>@Html.ValidationSummary()</p>
    </div>
}

它需要访问 ViewData Html.ValidationSummary

这些是否需要发送到 Helper 中,Helper 是否可以通过某些基类以某种方式访问​​它们?

我的 helper :
public static class ValidationSummaryHelper
{
    public static HtmlString Summary(???)
    { }}

最佳答案

在 C# 中相同

public static class ValidationExtensions
{
        public static MvcHtmlString AddCustomValidationSummary(this HtmlHelper htmlHelper)
        {
            string result = "";

            if (htmlHelper.ViewData.ModelState[""] != null && htmlHelper.ViewData.ModelState[""].Errors.Any())
            {
                result = "<div class='note note-danger'><h4 class='block'>Errors</h4><p>" + htmlHelper.ValidationSummary().ToString() + "</p></div>";
            }

            return new MvcHtmlString(result);
        }
}

关于c# - MVC 4 - 构建访问 ViewData 的 Helper,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20671116/

10-12 19:21