Dunno,如果这是在PR或Beta中发生的,但是如果我在上创建了扩展方法HtmlHelper,则在Razor支持的页面中无法识别该方法:
namespace SomeNamespace.Extensions {
public static class HtmlExtensions {
public static string Foo(this HtmlHelper html) {
return "Foo";
}
}
}
我将其添加到的<Namespaces>部分中Web.config:
<pages>
<namespaces>
<add namespace="System.Web.Mvc" />
<!-- snip -->
<add namespace="SomeNamespace.Extensions"/>
</namespaces>
</pages>
但是在尝试查看页面时会引发编译错误:
@Html.Foo()
如果我使用WebForms重新创建页面,则效果很好。这是怎么回事?
解决方法
如果我将其包含@using SomeNamespace.Extensions在Razor视图中,则可以使用,但我宁愿将其包含在其中Web.config
holdtom
GCT1015
RISEBY