5

Seguramente el hecho de que se declaren comenzando con "< asp:" es suficiente para inferir que son controles de servidor? ¿O solo se incluye para completar (por lo que se parecen a la declaración de control del servidor de < input runat = "server", por ejemplo). ¿O hay alguna razón especial?¿Por qué las declaraciones de control del servidor ASP.Net requieren el atributo runat = "server"?

Siempre me molesta que el compilador me diga que me lo he perdido cuando lo hago accidentalmente. Algo así como el pensamiento detrás de "var": si el compilador sabe qué es ... ¿por qué molestarse en esperar que lo diga?

+0

Échale un vistazo http://stackoverflow.com/questions/304290/asp-net-why-runatserver – Kaz

Respuesta

8

Tomado de this forum thread:

Internet Explorer soporta DHTML comportamientos.

[La sintaxis asp: control] no significa servidor control. Puede crear el componente DHTML del cliente que tiene espacio de nombres y se ejecutará en la máquina del cliente. Además, espacios de nombres están permitidos en XHTML y técnicamente puede utilizar el espacio de nombres asp para otra cosa en un cliente, si desea . Runat = "servidor" previene conflicto de espacio de nombres. Si el elemento no tiene el atributo runat = "server", será sin cambios en el navegador del cliente. Por lo tanto, también puede usar los componentes HTML (HTCs) en páginas ASP.NET.

un vistazo aquí

http://msdn.microsoft.com/workshop/author/behaviors/howto/creating.asp http://msdn.microsoft.com/workshop/author/behaviors/overview.asp

Mike Schinkel también has a blog post analiza por qué es necesario servidor runat =.

+0

Hubiera cerrado mi pregunta como un duplicado (también vea a continuación) pero no me deja. ¿Algunas ideas? – Ray

Cuestiones relacionadas