我找到HtmlHelper
类的this文档,令我感到惊讶的是,它在asp.net代码中被用作:
@Html.Action("Contact me","contact");
而不是
@HtmlHelper.Action("Contact me","contact");
由于文档的名称为HtmlHelper
,为什么我们仅将其用作Html
?
答案 0 :(得分:2)
类似于Model
变量在您的视图中可用的方式 - 即使您没有自己直接定义Model
变量 - Razor正在生成一个类,它提供了这些变量的实例您的cshtml文件范围内的模型类型和HtmlHelper
。它在该类上生成一个方法,该方法根据cshtml文件的内容写入HTML。
Model
是由@model
指令指定的类型的实例,当调用生成的方法并作为参数传递给{{1}时,在cshtml文件的范围内提供你的一个行动中的方法。
View
是Html
类型的实例,由生成的类在csthml文件的范围内提供。
HtmlHelper
是Url
类型的实例。