Не знаю, происходило ли это в PR или бета-версии, но если я создам метод расширения на HtmlHelper
, он не распознается на странице, поддерживаемой Razor:
namespace SomeNamespace.Extensions {
public static class HtmlExtensions {
public static string Foo(this HtmlHelper html) {
return "Foo";
}
}
}
Я добавил его в раздел
в 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