自定义帮助程序中的Html标准帮助程序为空

时间:2015-03-25 14:19:32

标签: asp.net-mvc html-helper

我在.cshtml帮助器中使用@helper制作了一些自定义助手,如下所示:

@helper MyCustomField(string value, bool valueAsRaw)
{
    <div>
        @if (valueAsRaw)
        {
            @Html.Raw(value)
        }
        else
        {
            @value
        }
    </div>
}

当我运行它时,我在@Html帮助器对象上得到null值异常。如何访问标准的HtmlHelper方法?

在VS中,我在Html.Raw上得到intellisense,所以它可用,但在运行时它是null。

1 个答案:

答案 0 :(得分:0)

可能是您错误地访问了帮助方法。 使用了您的代码,它按预期工作。

View.cshtml

<table>
<tr>
<td>
  @MyCustomFiled("StackOverFlow",true)
</td>
</tr>
</table>

@helper MyCustomFiled(string value, bool valueAsRaw)
{
    <div>
        @if (valueAsRaw)
        {
            @Html.Raw(value)
        }
        else
        {
            @value
        }
    </div>
}