<% Response.Write("Nuestra primera página
") %> Éste es el bloque proveedor de código, empieza con <% . Contiene instrucciones que se usan para producir un resultado. Muestra un texto en pantalla. Se van a usar con moderación porque no son compilados.
ASP y ASP.NET son totalmente distintos pero pueden operar en conjunto. Esto quiere decir que el servidor web puede procesar tanto páginas ASP como ASP.NET. EJERCICIO Realizar una página que nos muestre un saludo por pantalla. TEMA 2: CREACIÓN DE PÁGINAS ASP.NET UNA APLICACIÓN SENCILLA <%@ Page Language="VB" Debug="True" %> <%@ Page Language="c#" Debug="True" %> <script runat="server"> Sub tbMensaje_Change(Sender As Object, E As EventArgs) lblMensaje.Text = "Hola, " + tbMensaje.Text + "." End Sub <script runat="server"> public void tbMensaje_Change (Object sender, EventArgs E) { lblMensaje.Text = "Hola, " + tbMensaje.Text + "."; } Aprendiendo ASP.NET Lección 2<% Response.Write("Nuestra primera página
") %> <% Response.Write("Nuestra primera página
"); %>
Obtiene un valor del usuario y lo despliega con un saludo. No se ha establecido una acción en el formulario, por lo que retorna a sí mismo.") %> Es equivalente a poner <%="Nuestra primera página
" %> FLUJO DE PÁGINA La primera vez que se solicita la página desde el explorador web ASP.NET compilará el código que esté en los bloques de declaración. Por esto el explorador tarda en mostrar la página. Sin embargo, si se solicita una segunda vez sin modificar el código no habrá retardo alguno. Pero si se modifica algo ASP.NET volverá a compilar la página. Una vez que se envía el formulario y se compila el código, ASP.NET empieza a procesar todo el código que hemos generado y cualquier evento que haya ocurrido. En el ejemplo, el evento TextChanged ocurrió cuando se tecleó algo en la caja de texto. El motor de ASP.NET explora este evento, determina que debe hacer y lo hace. En ese momento, ASP.NET convierte cualquier control en elemento HTML. Luego evalúa cualquier bloque proveedor de código y devuelve el HTML necesario. Por último, el HTML resultante se envía al explorador web, que recibe sólo HTML estándar. Por lo que cualquier explorador web puede mostrar la página. ESTADO VISUAL Describe el aspecto de un objeto en un momento determinado. Por ej. Si un botón está o no pulsado. Una aplicación que lleve el control de esta información se conoce como estado de conservación. Si llenamos un formulario HTML y volvemos a él después, es posible que esté vacío. Esto es porque web es un medio sin estado. ASP.NET lleva automáticamente un control del estado visual. Esto quiere decir que si rellenamos un formulario HTML y volvemos a él después los datos estarán allí. ASP.NET hace esto al devolver campos ocultos de formulario HTML siempre que indicamos runat=server en el formulario. COMO ESCRIBIR CÓDIGO DE ASP.NET Y HTML Hay dos formas de escribir código de ASP.NET: en los bloques de declaración de código o en los bloques proveedores de código. Es mejor el primer método. También hay varias formas de escribir HTML puro mediante ASP.NET, como con Response.Write o con la etiqueta <%=. Debemos: Separar el código ASP.NET del HTML tanto como podamos mediante bloques de declaración de código. No debemos: Utilizar bloques proveedores de código para intercalar código o resultados HTML (con Response.Write) cuando otro método cumpla mejor con el trabajo.
6
COMENTARIOS EN EL CÓDIGO Hay tres formas de comentar el código: Para comentar sólo el código HTML. ` (apóstrofo) con Visual Basic // /* comentario */ con c# <%− − y − − %> comentarios para el servidor COMO SE DIVIDE EN VARIAS LÍNEAS Con Visual Basic: <% Response.Write _ (hola) %> <% Response.Write (Te estoy & _ saludando) %> Con C#: No se hace nada especial. COMO IMPORTAR ESPACIOS DE NOMBRES <%@ Import Namespace=System.Drawing %> para VB <%@ Import Namespace="System.Data" %> para c# Importa todas las clases del espacio de nombre System.Drawing, como font e image. De forma predeterminada, se importan automáticamente los siguientes a todas las páginas ASP.NET: System System.Collections System.IO System.Web System.Web.IU System.Web.IU.HtmlControls System.Web.IU.WebConstrols TEMA 3: USO DE OBJETOS EN ASP.NET
7
EL OBJETO RESPONSE Permite la interacción del servidor con el cliente. Cuando un usuario solicita una página asp.net genera una instancias del objeto HttpResponse, el cual contiene información (propiedades y métodos) necesaria para comunicarse con el cliente. El nombre de la instancia es Response, de modo que podrá utilizar este nombre para acceder a las propiedades y métodos del objeto HttpResponse. El método Write <%@ Page Language="VB" %> <script runat="server"> Sub Page_Load(obj as object, e as eventargs) Dim i As Integer Response.Write("Éste es un ejemplo") Necesita una cadena como parámetro Response.Write("
" Label1.Text += Ahora.ToString("D") + "
" Label1.Text += Ahora.ToString("f") + "
" Label1.Text += Ahora.ToString("F") + "
" Label1.Text += Ahora.ToString("g") + "
" Label1.Text += Ahora.ToString("G") + "
" Label1.Text += Ahora.ToString("m") + "
" Label1.Text += Ahora.ToString("r") + "
" Label1.Text += Ahora.ToString("s") + "
" Label1.Text += Ahora.ToString("t") + "
" Label1.Text += Ahora.ToString("T") + "
" Label1.Text += Ahora.ToString("u") + "
" Label1.Text += Ahora.ToString("U") + "
" Label1.Text += Ahora.ToString("y") + "
" Label1.Text += Ahora.ToString("dddd, MMMM dd yyyy") + "
" Label1.Text += Ahora.ToString("ddd, MMM d ""'""yy") + "
" Label1.Text += Ahora.ToString("dddd, MMMM dd") + "
" Label1.Text += Ahora.ToString("M/yy") + "
" Label1.Text += Ahora.ToString("dd−MM−yy") + "
" if intHora < 12 then Label1.Text += "¡Buenos días!" elseif intHora > 12 And intHora < 18 then Label1.Text += "¡Buenas tardes!" else Label1.Text += "¡Buenas noches!"
26
end if end sub
<%@ Page Language="c#" %>
Ver tema4−tm4ejemplo1.aspx Si especificamos en el controlador del servidor que un método deberá controlar un evento:
42
43
Este ejemplo demuestra los controles HtmlImage y HtmlInputButton.