使用和不使用Html帮助程序的Html之间的比较

时间:2014-01-18 21:11:43

标签: c# html asp.net asp.net-mvc-4 razor

我有一个asp.net mvc4应用程序,其中一些Html.Helpers用于代替Html代码

<form></form>

==&GT;

@Html.BeginForm(){}

我使用了Model Binding的概念:代码变得更易读,更易于维护,而且很好。但我想知道:

  1. 如果模型包含大数据,那么模型的绑定是否比基本的Html代码花费更多时间?
  2. 除了可维护性和可读性之外,HTML帮助程序还有其他好处吗?

2 个答案:

答案 0 :(得分:3)

  1. 这与html(帮助器)无关,绑定是在POST
  2. 时由框架完成的
  3. '只有'那些好处。

答案 1 :(得分:1)

HTML Helpers是基本上编写HTML的方法(扩展方法),其中一些方法确保了绑定的必要属性。

当您想以与帮助者不同的方式编写HTML时,应该自己编写代码。

基本上,即使您编写HTML代码,也应该在方法中包含可以在多个页面上重复的内容。随着性能的提升,它就像在C#方法中编写代码,或将其封装到另一个方法中。

默认的HTML帮助程序只是在分析您发送的参数后编写HTML(您还可以通过手动编写并具有正确的属性来确保绑定)。

如果您对BeginForm方法感到好奇,可以查看源代码here