viernes, 27 de diciembre de 2013

Herramientas de la línea de comandos de ASP.NET

ASP.NET incluye herramientas de la línea de comandos que facilitan el trabajo con sitios web.
Para que estas herramientas funcionen correctamente, es necesario configurar correctamente las variables de entorno PATHINCLUDE y LIB. Recomendamos utilizar el símbolo de sistema de Visual Studio, que abre una ventana de línea de comandos y establece estas variables automáticamente. Para utilizar el símbolo de sistema de Visual Studio, en el menú Inicio, elija Todos los programasMicrosoftVisual Studio <versión>Visual Studio Tools y, por último, haga clic en Símbolo del sistema de Visual Studio.

Sitios web ASP.NET para dispositivos móviles

El desarrollo de páginas ASP.NET para exploradores de dispositivos móviles no difiere sustancialmente del desarrollo de páginas para los exploradores de escritorio. Con objeto de ayudarle a crear aplicaciones para dispositivos móviles, ASP.NET proporciona un espacio de nombres System.Web.Mobile dedicado específicamente al desarrollo Web móvil.
Puede crear una página Web a partir de la clase base MobilePage y agregar controles del espacio de nombres System.Web.Mobile. Este espacio de nombres define una serie de controles de servidor Web y adaptadores que resultan especialmente útiles al crear aplicaciones que deben estar disponibles para muchos dispositivos móviles diferentes, como los teléfonos móviles.
ASP.NET también proporciona una arquitectura adaptable de controles que permite crear adaptadores de dispositivos personalizados para los controles de servidor web ASP.NET. Estos adaptadores pueden crear una representación personalizada de un control en función del explorador que realiza la solicitud. Con la arquitectura adaptable, puede crear adaptadores personalizados para los controles de servidor Web de ASP.NET para representar resultados específicos en los dispositivos que tienen acceso a la aplicación en exploradores de escritorio.
Tanto en los exploradores de escritorio como en los dispositivos móviles, el desarrollo sigue el modelo orientado a eventos de .NET estándar en el que la aplicación responde a las solicitudes del usuario, a los clics en los botones, etc.
Esta información general contiene las siguientes secciones:
Aunque ASP.NET integra tecnología para que el desarrollo de aplicaciones Web ASP.NET Mobile siga el mismo modelo que el desarrollo de aplicaciones Web tradicional, el objetivo principal de la arquitectura no es permitirle crear páginas únicas que se puedan procesar en exploradores de dispositivos de escritorio o de dispositivos móviles. Las limitaciones de los exploradores en los dispositivos móviles a menudo implican que las páginas diseñadas en los exploradores de escritorio no se puedan traducir en los exploradores de dispositivos móviles.
Por ejemplo, si crea una página Web ASP.NET que incluye un encabezado de sitio, una barra de navegación en la parte superior de la página, una estructura de navegación secundaria a lo largo de la página y contenido en el resto de la página, ésta se representará tal como se ha diseñado en un explorador de escritorio. En este caso, normalmente hay bastante espacio para representar todos los controles y proporcionar un área de contenido desplazable. Sin embargo, en muchos exploradores de dispositivos móviles, este diseño no sería posible. Una gran cantidad de dispositivos móviles disponen de un área de pantalla más pequeña que los monitores de escritorio, por lo que incluso la navegación se convierte en un proceso de varios pasos en el que el usuario debe hacer clic en varios controles para obtener el contenido de la página.
La lógica de la presentación sigue un modelo similar. Por ejemplo, cuando el usuario rellena un formulario Web Forms utilizando un explorador de escritorio, puede ver muchos controles en la pantalla al mismo tiempo. Cuando el formulario se valida en el servidor, los errores de validación se pueden mostrar junto a los controles. Con un dispositivo móvil, la especificación de datos en los formularios y la validación de los mismos pueden ser mucho más difíciles de mostrar en un formato que sea utilizable. Además, en los dispositivos móviles podría optar por proporcionar accesos directos que permitan al usuario rellenar información escribiendo menos, ya que es posible que resulte más difícil escribir en esos dispositivos.
Por estas razones, debe crear páginas independientes en la aplicación Web ASP.NET para su uso en exploradores de escritorio y de dispositivos móviles. Una página desarrollada específicamente para los exploradores de dispositivos móviles permite dividir la lógica de presentación en partes más pequeñas que funcionen mejor para el área de presentación y el hardware de entrada de datos del dispositivo.
El espacio de nombres System.Web.Mobile de ASP.NET está diseñado específicamente para el desarrollo web móvil. La página Web móvil se crea a partir de la clase base MobilePage y se agregan controles de servidor Web móviles desde el espacio de nombres System.Web.Mobile. Los controles de servidor Web móviles disponen de varios adaptadores especializados en .NET Framework y, por consiguiente, están especialmente orientados al desarrollo de aplicaciones Web móviles para una amplia gama de dispositivos móviles.

La mayoría de los controles de servidor web ASP.NET siguen el modelo de arquitectura de adaptador unificado. Esto significa que todos los controles se pueden comportar de forma diferente, según el dispositivo que realiza la solicitud, mediante una llamada a un adaptador personalizado que proporcione los comportamientos apropiados para dicho dispositivo, como la creación del lenguaje de marcado adecuado. Si se ha configurado un adaptador en el archivo de definición del explorador para el dispositivo o el explorador que realiza la solicitud, ASP.NET lo llamará en cada fase del ciclo de vida de un control de servidor Web. De esta manera, el adaptador podrá ajustar, por ejemplo, el resultado representado y controlar la lógica de estado de vista específica del dispositivo o las características individuales del dispositivo. Los archivos de definición del explorador se encuentran en la carpeta Browsers del directorio Config de .NET Framework o en la carpeta App_Browsers de una aplicación Web.
Actualmente, no se proporciona ningún adaptador para los controles de ASP.NET. Hay, sin embargo, un conjunto abundante de adaptadores de los controles de ASP.NET Mobile para una gran variedad de dispositivos y exploradores.
Puede crear adaptadores personalizados para cada dispositivo y hacer que el marco de trabajo de páginas ASP.NET los utilice cuando un dispositivo concreto tenga acceso a su página. Para obtener más información, vea Información general sobre la arquitectura del comportamiento adaptable de los controles.

Elegir adaptadores personalizados o controles móviles

Para páginas dirigidas a dispositivos móviles, debe utilizar los controles de servidor Web móviles y crear paginas que se hereden de MobilePage. Estos controles admiten muchos dispositivos móviles, como teléfonos móviles. ASP.NET incluye controles de servidor Web móviles para una amplia gama de necesidades específicas de los entornos móviles y de desarrollo Web en general. Además, ya existen adaptadores de dispositivos para controles móviles para los principales dispositivos y sus lenguajes de marcado.
Microsoft continuará proporcionando actualizaciones de los adaptadores para los controles de servidor Web móviles cuando evolucionen los principales lenguajes de formato. Esto le permitirá admitir nuevos lenguajes de formato con los mismos controles que está utilizando en la actualidad. Por ejemplo, si va a crear un sitio de comercio electrónico que admite exploradores de escritorio, así como una amplia gama de dispositivos móviles, tendría que crear un conjunto de páginas ASP.NET que hereden de la clase Page y otro conjunto de páginas que hereden de la clase base MobilePage y utilicen controles móviles.
Si es necesario, puede crear sus propios adaptadores personalizados o puede modificar los existentes si los nuevos dispositivos exigen requisitos de funcionamiento nuevos en los controles de servidor Web móviles.
Hay escenarios en los que tiene sentido el uso de controles de servidor Web ASP.NET y la escritura de adaptadores personalizados. Generalmente, éstos serán aplicaciones para exploradores de escritorio completos en los que son necesarias variaciones de comportamiento en función del explorador o aplicaciones orientadas a cierto tipo de dispositivos muy particulares para los que no se garantizan los controles móviles y su conjunto de características. Por ejemplo, imagine que crea una aplicación de reclamaciones de seguros que tiene una interfaz basada en explorador para su uso en la oficina y una interfaz para diversos dispositivos para su uso fuera de la oficina. Esta aplicación podría utilizar las mismas clases de página base para las páginas normales y las páginas para diversos dispositivos. Únicamente debería crear adaptadores personalizados para el dispositivo que se ha implementado fuera de la oficina

Administración de sitios web ASP.NET

Con las características del sistema de configuración de ASP.NET puede configurar un servidor entero, una aplicación ASP.NET o páginas individuales de subdirectorios de la aplicación. Puede configurar características, como modos de autenticación, almacenamiento en caché de páginas, opciones del compilador, errores personalizados, opciones de depuración y seguimiento, etc.
El sistema de configuración de ASP.NET ofrece una infraestructura extensible que le permite definir las opciones de configuración en archivos XML que se implementan fácilmente. Estos archivos, cada uno de los cuales se denomina Web.config, pueden existir en varias ubicaciones de una aplicación ASP.NET. Puede agregar o revisar en cualquier momento las opciones de configuración con un impacto mínimo sobre las aplicaciones y los servidores Web que haya en funcionamiento.
Para obtener más información acerca de cómo configurar aplicaciones cliente de .NET Framework, veaConfigurar aplicaciones y Esquema de los archivos de configuración de .NET Framework.
NotaNota
Las características del sistema de configuración de ASP.NET sólo se aplican a los recursos de ASP.NET. Por ejemplo, la autenticación mediante formularios sólo restringe el acceso a los archivos de ASP.NET, pero no a los archivos estáticos ni a los archivos clásicos de páginas Active Server (ASP), a menos que dichos recursos estén asignados a extensiones de ASP.NET. Utilice las características de configuración de Microsoft Internet Information Services (IIS) para configurar los recursos que no son de ASP.NET. Para obtener más información, vea Working with the Metabase (IIS 6.0) y IIS Metabase Properties.

Servicios Web ASP.NET

Este tema forma parte de una tecnología heredada. Ahora, los servicios Web XML y los clientes de servicios Web XML deben crearse mediante Windows Communication Foundation.
Los servicios Web son componentes de un servidor web a los que puede llamar una aplicación cliente realizando solicitudes HTTP a través de Internet. ASP.NET permite crear servicios Web personalizados o utilizar servicios de aplicación integrados y llamar a estos servicios desde cualquier aplicación cliente.Sugerimos el siguiente orden de la documentación para ayudarle a desplazarse por los temas relacionados.

Seguridad de ASP.NET

La seguridad es un aspecto muy importante de las aplicaciones web ASP.NET. Los temas de esta sección proporcionan información adicional sobre los problemas de seguridad que se producen en las aplicaciones web. Se incluye información sobre cómo mitigar las amenazas de seguridad habituales, cómo proteger los recursos en una aplicación web, y cómo autenticar y autorizar a los usuarios individuales.
Los temas de esta sección proporcionan consejos para mejorar la seguridad de su aplicación a través de la autenticación de usuarios, la autorización, el cifrado de datos, etc.
NotaNota
Existen muchas amenazas y medidas que se pueden tomar contra ellas al proteger una aplicación ASP.NET. Se recomienda encarecidamente que revise y aplique la guía y las listas de comprobación proporcionadas en los artículos Improving Web Application Security: Threats and Countermeasures yBuilding Secure ASP.NET Applications: Authentication, Authorization, and Secure Communication en el sitio web Microsoft Patterns and Practices.

Acceso a datos de ASP.NET

ASP.NET contiene características que permiten agregar acceso a datos a las páginas Web ASP.NET con muy poco código o nada en absoluto. Puede conectarse a bases de datos, datos y archivos XML, y objetos comerciales para utilizarlos como orígenes de datos. A continuación, puede mostrar los datos mediante diversos controles que proporcionan gran flexibilidad para la presentación de los datos en la página.Sugerimos el siguiente orden de la documentación para ayudarle a navegar por los temas relacionados.

ASP.NET modelos de programacion

Actualmente, ASP.NET soporta tres modelos de programación: ASP.NET Web Forms, ASP.NET MVC y ASP.NET Web Pages. Aunque los tres modelos de programación se ejecutan sobre la misma base de ASP.NET, cada uno de ellos estructura la aplicación de maneras completamente distintas, promueve metodologías de desarrollo diferentes y se adapta a perfiles de desarrolladores distintos. Algunas características que son virtudes en unos modelos de programación, pueden ser consideradas debilidades en el otro. ¿Qué es más importante, desarrollar a un gran nivel de abstracción o tener control total cada uno de los aspectos de la aplicación? Simplicidad vs. Control. Flexibilidad vs. Eficiencia. Estas son las compensaciones que hay que baremar a la hora de elegir. En esta serie de artículos repasaremos las diferencias entre los tres modelos de programación, y los escenarios favorables a cada uno de ellos.
Es importante recalcar que el hecho de elegir uno de los modelos de programación al comenzar un proyecto de ASP.NET no excluye necesariamente a los otros, sino que es posible tener aplicaciones “híbridas” y en muchos casos tendrá todo el sentido desarrollar ciertas partes de la aplicación con un modelo de programación y otras partes con otro modelo distinto.
ASP.NET Web Forms fue el primero de los tres modelos de programación en existir, y proporciona un gran nivel de abstracción con un modelo de programación familiar basado en eventos y controles que favorece la productividad mediante la programación declarativa reduciendo la cantidad de código necesaria para implementar una determinada funcionalidad.
ASP.NET MVC se concibió como alternativa a Web Forms y proporciona un modelo de programación basado en el popular patrón de arquitectura MVC. Entre sus principales características destacan su completa integración con pruebas unitarias y su separación más clara entre la lógica de presentación, la lógica de negocio y la lógica de acceso a datos.
Comunidad ASP.NET MVC en español: https://groups.google.com/d/forum/mundoaspnetmvc
ASP.NET Web Pages es el más reciente de los tres modelos de programación, y fue creado como respuesta a una creciente demanda de desarrolladores web sin experiencia previa con ASP.NET, cuya iniciación en ASP.NET Web Forms o MVC les suponía una inversión inicial de tiempo demasiado grande. Web Pages proporciona un modelo de programación más simple y rápido de aprender, sin renunciar a toda la funcionalidad y flexibilidad de ASP.NET.