#asp.net-mvc-3 #c#-4.0 #razor
#asp.net-mvc-3 #c #-4.0 #razor
Вопрос:
Я создаю некоторые @helper внутри папки App_Code. Цель состоит в том, чтобы полностью заменить мои старые HtmlHelpers, написанные в файле * .cs, построителем строк и всеми другими забавными вещами.
В любом случае, в паре мест я использую Url.Content в атрибутах src <img>
тегов. Раньше они отлично работали как HtmlHelpers. Теперь, когда я получил свой код внутри файла *.cshtml в папке App_Code, сайт не хочет компилироваться:
CS0103: имя «URL» не существует в текущем контексте
Какой хороший способ решить эту проблему? Я бы не хотел иметь там относительный путь вместо сопоставления путей.
Ответ №1:
Вы могли бы передать это в качестве аргумента помощнику:
@helper Foo(UrlHelper url) {
@url.Action("~/foo");
}
и затем:
@Foo(Url)
Комментарии:
1. Смехотворно! Я только что понял, что helper больше не используется. Это работает, спасибо!