Почему вспомогательный класс HTML называется Html, а не HtmlHelper?

1

Я нашел эту документацию для класса HtmlHelper, что меня удивило, было использовано в коде asp.net как:

@Html.Action("Contact me","contact");

вместо

@HtmlHelper.Action("Contact me","contact");

Поскольку в документации есть HtmlHelper как имя класса, то почему мы используем его только как Html?

Теги:
razor
razorengine

1 ответ

2
Лучший ответ

Подобно тому, как переменная Model доступна внутри вашего представления - даже если вы сами не определили Model самостоятельно - Razor генерирует класс, который предоставляет эти экземпляры вашего типа модели и HtmlHelper в объеме вашего файла cshtml. Он генерирует метод для этого класса, который пишет HTML в соответствии с содержимым вашего файла cshtml.

Model представляет собой экземпляр типа, указанное @model директивы, представленный в рамках вашего файла cshtml когда сгенерированный метод вызываются и, был принят в качестве аргумента View метода в одном из ваших действий.

Html - это экземпляр типа HtmlHelper, предоставляемый в объеме вашего файла csthml сгенерированным классом.

Url - это экземпляр типа UrlHelper.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню