asp.net – 什么时候在普通的HTML上使用runat =“server”

前端之家收集整理的这篇文章主要介绍了asp.net – 什么时候在普通的HTML上使用runat =“server”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否曾经适合于标准的HTML元素,而不是一个真正的ASP.NET控件上使用RUNAT =“服务器”?我有超过设定标准元素的HTML /文本完全控制,所以我为什么不使用它,而不是一个“笨重” ASP.NET WebForms的控制?

如果一个比另一个更好,我想知道一些兴趣点:

>性能差异
>功能差异
>其他差异不是很明显

一个例子:

<asp:Literal ID="mySpecialHtml" runat="server" />

<div id="mySpecialHtml" runat="server" />

解决方法

两者都是ASP.NET服务器控件。与HTML元素相对应的那些在System.Web.UI.HtmlControls命名空间中,Web控件位于System.Web.UI.WebControls命名空间中。

HTML控件更轻巧,与HTML元素完全对应,而Web控件具有更多功能,并可根据浏览器功能和控件的设置呈现为不同的HTML元素。

HTML控件呈现为单个HTML元素,而Web控件呈现为零个或多个HTML元素。例如,文字控制不会被渲染为一个元素,它只输出其文本。还有其他控件不会自动渲染任何元素,如Repeater和PlaceHolder控件。另一方面,例如CheckBoxList控件被渲染为几个HTML元素,一个表作为容器,以及每个复选框的输入元素。

使用不同元素呈现的控件的示例是TextBox控件,它将根据其TextMode属性将其呈现为输入或textarea元素。

Web控件具有更多的功能,但也使用更多的资源。他们有更多的属性支持的东西,如主题和数据绑定。许多Web控件将数据放在ViewState中,作为页面的一部分发送。如果您不小心,ViewState可能会变得相当大,并影响页面的加载时间。

猜你在找的asp.Net相关文章