SlideShare uma empresa Scribd logo
1 de 51
Baixar para ler offline
ASP.NET 4




Elaborado por: Naim Jhon Cruzado Paredes
Posibilidades ilimitadas
Windows Azure es una plataforma de nube abierta y flexible que permite compilar, implementar y
administrar aplicaciones rápidamente, en una red global de centros de datos administrados por
Microsoft. Puede compilar aplicaciones en cualquier lenguaje, herramienta o marco. Y puede
integrar sus aplicaciones de nube públicas con el entorno de TI existente.


Siempre disponible. Siempre disponible.
Windows Azure entrega un Contrato de nivel de servicio mensual del 99,95 % que permite
compilar y ejecutar aplicaciones de alta disponibilidad sin importar la infraestructura. Proporciona
revisiones automáticas del SO y de los servicios, equilibrio de carga de red integrado y resistencia
ante errores de hardware. Admite un modelo de implementación con el que se puede actualizar
una aplicación sin inactividad.




Elaborado por: Naim Jhon Cruzado Paredes
Abierto
Windows Azure permite utilizar cualquier lenguaje, marco o herramienta para crear aplicaciones.
Las características y los servicios se exponen utilizando protocolos REST abiertos. Las bibliotecas
de cliente de Windows Azure están disponibles para varios lenguajes de programación, se
comercializan bajo una licencia de código abierto y se hospedan en GitHub.


Servidores ilimitados. Almacenamiento ilimitado.
Windows Azure permite escalar aplicaciones a cualquier tamaño con facilidad. Es una plataforma
de autoservicio totalmente automatizada que permite el aprovisionamiento de recursos en
cuestión de minutos. El uso de recursos aumenta o disminuye de manera flexible en función de las
necesidades. Solo se pagan los recursos que usa la aplicación. Windows Azure está disponible en
varios centros de datos del mundo, lo que permite implementar las aplicaciones cerca de los
clientes.




Elaborado por: Naim Jhon Cruzado Paredes
Gran capacidad
Windows Azure proporciona una plataforma en la nube flexible que puede
satisfacer los requisitos de cualquier aplicación. Permite hospedar y ampliar el
código de aplicación dentro de roles de proceso de un modo totalmente
confiable. Los datos se pueden almacenar en bases de datos SQL relacionales,
almacenes de tablas NoSQL y almacenes de blobs no estructurados, y existe la
opción de usar la funcionalidad de Hadoop e inteligencia empresarial para la
minería de datos. Puede aprovechar la sólida funcionalidad de mensajería de Windows Azure para
habilitar aplicaciones distribuidas escalables, así como para entregar soluciones híbridas que se
ejecuten en la nube y en un entorno empresarial local. Los servicios de caché distribuida y red de
entrega de contenido (CDN) de Windows Azure permiten reducir la latencia y ofrecer aplicaciones
con un gran rendimiento en cualquier lugar del mundo.Empiece a crear grandes aplicaciones hoy
mismo.

Empiece a crear grandes aplicaciones hoy mismo…!!!




Elaborado por: Naim Jhon Cruzado Paredes
CONFIGURAR EL ENTORNO DE DESARROLLO
Antes de poder empezar a desarrollar la aplicación de Windows Azure, necesita obtener las herramientas y configurar el entorno de desarrollo.

    1.   Para instalar el SDK de Windows Azure para .NET, haga clic en el botón siguiente:

         Descargar herramientas y SDK

         Cuando se le pida que ejecute o guarde WindowsAzureSDKForNet.exe, haga clic en Ejecutar:




    2.   Haga clic en Instalar en la ventana del instalador y prosiga con la instalación:




Elaborado por: Naim Jhon Cruzado Paredes
3.   Una vez completada la instalación, tendrá todo lo necesario para iniciar el desarrollo. El SDK incluye herramientas que le permiten desarrollar
        fácilmente aplicaciones de Windows Azure en Visual Studio. Si no tiene instalado Visual Studio, el SDK instala también la versión Visual Web Developer
        Express gratuita.


CREAR UNA APLICACIÓN ASP.NET MVC 3



Elaborado por: Naim Jhon Cruzado Paredes
CREAR EL PROYECTO

   1.   Use los privilegios de administrador para iniciar Microsoft Visual Studio 2010 o Microsoft Visual Web Developer Express 2010. Para iniciar Visual Studio
        con privilegios de administrador, haga clic con el botón secundario en Microsoft Visual Studio 2010 (o Microsoft Visual Web Developer Express 2010) y
        después haga clic en Ejecutar como administrador. El emulador de proceso de Windows Azure, descrito posteriormente en esta guía, requiere que
        Visual Studio se inicie con privilegios de administrador.

        En Visual Studio, en el menú Archivo, haga clic en Nuevo y luego en Proyecto.




Elaborado por: Naim Jhon Cruzado Paredes
2.   En Plantillas instaladas, bajo Visual C#, haga clic en Web y después en Aplicación web de ASP.NET MVC 3.
   3.   Asigne a la aplicación el nombre de ToDoListApp y haga clic en Aceptar:




Elaborado por: Naim Jhon Cruzado Paredes
4.   En el cuadro de diálogo Nuevo proyecto de ASP.NET MVC 3, seleccione la plantilla Aplicación de Internet y el motor de vistas Razor. Haga clic en
        Aceptar.

MODIFICAR EL TEXTO DE LA INTERFAZ DE USUARIO EN SU APLICACIÓN

   1.   En el Explorador de soluciones, bajo ViewsShared, abra el archivo _Layout.cshtml.


Elaborado por: Naim Jhon Cruzado Paredes
2.   En la etiqueta de cuerpo, busque el título de la página incluido entre etiquetas h1. Cambie el texto del título de Mi Aplicación de MVC a Lista de tareas
        pendientes. Aquí es donde se especifican estos datos:




Elaborado por: Naim Jhon Cruzado Paredes
EJECUTAR LOCALMENTE LA APLICACIÓN

Ejecute la aplicación para comprobar que funciona.

    1.   En Visual Studio, presione F5.
    2.   Debería parecer que la aplicación se ejecuta en un explorador:




Elaborado por: Naim Jhon Cruzado Paredes
PREPARAR LA APLICACIÓN PARA SU IMPLEMENTACIÓN EN WINDOWS AZURE


Elaborado por: Naim Jhon Cruzado Paredes
Ahora, preparará su aplicación para que se ejecute en un servicio hospedado de Windows Azure. La aplicación debe incluir un proyecto de implementación de
Windows Azure para poder implementarse en la nube. El proyecto de implementación contiene información de configuración necesaria para ejecutar
correctamente la aplicación en la nube.

    1.   Para hacer que su aplicación se pueda implementar en la nube, haga clic con el botón secundario en el proyecto ToDoListApp en el Explorador de
         soluciones y haga clic en Agregar proyecto de implementación de Windows Azure:




Elaborado por: Naim Jhon Cruzado Paredes
2.   Para habilitar el proveedor de pertenencia integrado, debe usar los proveedores universales de ASP.NET. Este proveedor habilita la funcionalidad de
        administración de cuentas de su aplicación. En el Explorador de soluciones, haga clic con el botón secundario en ToDoListApp y, a continuación, haga
        clic en Administrar paquetes NuGet. (o Agregar referencia de paquetes de biblioteca en versiones anteriores de NuGet):




Elaborado por: Naim Jhon Cruzado Paredes
3.   En el cuadro de diálogo ToDoListApp – Administrar paquetes NuGet, en la esquina superior derecha del campo Buscar en línea, escriba "proveedores
        universales":




   4.   Seleccione la opción de los proveedores universales de ASP.NET y haga clic en Instalar. Cierre el cuadro de diálogo ToDoListApp – Administrar
        paquetes NuGet cuando se haya completado la instalación.
   5.   En el Explorador de soluciones, abra el archivo Web.config en el directorio raíz del proyecto ToDoListApp.
   6.   En la sección <configuration> / <connectionStrings>, sustituya la cadena de conexión DefaultConnection como se muestra a continuación.

        <add name="DefaultConnection" connectionString="Data Source=.SQLEXPRESS;Initial Catalog=aspnet_ToDoListApp;Integrated Security=True;MultipleActiveResultSets=True"
        providerName="System.Data.SqlClient" />


   7.   Para probar la aplicación, presione F5.


Elaborado por: Naim Jhon Cruzado Paredes
8.   Se iniciará el emulador de proceso de Windows Azure. El emulador del proceso utiliza el equipo local para emular la ejecución de la aplicación en
        Windows Azure. Puede confirmar que el emulador se ha iniciado examinando la bandeja del sistema:




   9.   La aplicación se seguirá mostrando en un explorador como ejecutándose localmente, y tendrá el mismo aspecto y funcionamiento que cuando se
        ejecutó anteriormente como una aplicación de ASP.NET MVC 3 normal.




Elaborado por: Naim Jhon Cruzado Paredes
IMPLEMENTAR LA APLICACIÓN EN WINDOWS AZURE


Elaborado por: Naim Jhon Cruzado Paredes
Puede implementar su aplicación en Windows Azure a través del portal o directamente desde Visual Studio. En esta guía se muestra cómo implementar su
aplicación desde Visual Studio.

Para implementar la aplicación en Windows Azure, necesita una cuenta. Si no tiene ninguna, puede crear una cuenta de evaluación gratuita. Una vez que haya
iniciado sesión con su cuenta, puede descargar un perfil de publicación de Windows Azure. El perfil de publicación autorizará a su equipo para publicar
paquetes de implementación en Windows Azure mediante Visual Studio.

CREAR UNA CUENTA DE WINDOWS AZURE

    1.   Abra un explorador web y vaya a http://www.windowsazure.com.

         Para empezar con una cuenta gratuita, haga clic en Versión de evaluación gratuita en la esquina superior derecha y siga los pasos.




Elaborado por: Naim Jhon Cruzado Paredes
2.   Su cuenta se ha creado. Ya está listo para implementar la aplicación en Windows Azure.

PUBLICAR LA APLICACIÓN

   1.   Haga clic con el botón secundario en el proyecto ToDoListApp en el Explorador de soluciones y haga clic en Publicar en Windows Azure.




Elaborado por: Naim Jhon Cruzado Paredes
2.   La primera vez que publique, deberá descargar sus credenciales mediante el vínculo que se proporciona.
            1. Haga clic en Iniciar sesión para descargar las credenciales:




Elaborado por: Naim Jhon Cruzado Paredes
2.   Inicie sesión con su Live ID:




Elaborado por: Naim Jhon Cruzado Paredes
3.   Guarde el archivo del perfil de publicación en una ubicación del disco duro donde pueda recuperarlo:




Elaborado por: Naim Jhon Cruzado Paredes
4.   Dentro del cuadro de diálogo de publicación, haga clic en Importar perfil:




Elaborado por: Naim Jhon Cruzado Paredes
5.   Busque y seleccione el archivo que acaba de descargar y, a continuación, haga clic en Siguiente.
           6.   Elija la suscripción de Windows Azure en la que desearía publicar:




Elaborado por: Naim Jhon Cruzado Paredes
7.   Si su suscripción todavía no contiene servicios hospedados, se le pedirá que cree uno. El servicio hospedado actúa como un contenedor de la
                aplicación en su suscripción de Windows Azure. Escriba un nombre que identifique su aplicación y elija la región para la que se debe optimizar
                la aplicación. (Es previsible que los tiempos de carga sean más rápidos para los usuarios que accedan desde esta región).




Elaborado por: Naim Jhon Cruzado Paredes
8.   Seleccione el servicio hospedado en el que desea publicar su aplicación. Deje los valores predeterminados que se muestran a continuación
                para las demás opciones. Haga clic en Siguiente:




Elaborado por: Naim Jhon Cruzado Paredes
9.   En la última página, haga clic en Publicar para iniciar el proceso de implementación:




Elaborado por: Naim Jhon Cruzado Paredes
Esta operación tardará aproximadamente entre cinco y siete minutos. Como es la primera vez que publica la aplicación, Windows Azure
               aprovisiona una máquina virtual (VM), realiza las operaciones de seguridad, crea un rol web en la máquina virtual para hospedar la aplicación,
               implementa el código en ese rol web y, por último, configura el equilibrador de carga y las redes para que su aplicación esté disponible
               públicamente.

           10. Mientras la publicación está en curso, puede supervisar la actividad en la ventana Registro de actividad de Windows Azure, que se encuentra
               normalmente acoplada a la parte inferior de Visual Studio o Visual Web Developer:




Elaborado por: Naim Jhon Cruzado Paredes
11. Cuando se complete la implementación, podrá ver el sitio web haciendo clic en el vínculo de dirección URL del sitio web en la ventana de
               supervisión:




Elaborado por: Naim Jhon Cruzado Paredes
Elaborado por: Naim Jhon Cruzado Paredes
AGREGAR COMPATIBILIDAD CON BASES DE DATOS SQL


Elaborado por: Naim Jhon Cruzado Paredes
La plataforma Windows Azure proporciona dos opciones de almacenamiento principales:

        Los servicios de almacenamiento de Windows Azure proporcionan almacenamiento de datos no relacionales en forma de blobs y tablas. Es tolerante a
         errores, altamente disponible y se amplía automáticamente para proporcionar almacenamiento prácticamente ilimitado.
        SQL Azure proporciona un servicio de bases de datos relacionales basado en nube creado a partir de las tecnologías de SQL Server. También es
         tolerante a errores y altamente disponible. Está diseñado para que las herramientas y aplicaciones que funcionan con SQL Server funcionen también
         con SQL Azure. Una base de datos de SQL Azure puede tener un tamaño de hasta 100 GB, y puede crear todas las bases de datos que desee.

En esta guía se utiliza una base de datos de SQL Azure para almacenar datos, pero la aplicación se podría crear también mediante Windows Azure Storage. Para
obtener más información sobre SQL Azure y Windows Azure Storage, consulte Data Storage Offerings on the Windows Azure Platform (en inglés).

CREAR CLASES PARA EL MODELO DE DATOS

Usará la característica Code First de Entity Framework para crear y configurar un esquema de base de datos para la aplicación. Code First permite escribir clases
estándar que Entity Framework usa para crear automáticamente las bases de datos y las tablas.

    1.   En el Explorador de soluciones, haga clic con el botón secundario en Modelos, y después haga clic en Agregar y luego en Clase.
    2.   En el cuadro de diálogo Agregar nuevo elemento, en el campo Nombre escriba ToDoModels.cs y después haga clic en Agregar.
    3.   Sustituya el contenido del archivo ToDoModels.cs por el código incluido a continuación. Este código define la estructura de la clase ToDoItem, que se
         asignará a una tabla de base de datos. También crea una clase de contexto de base de datos que le permitirá realizar operaciones en la clase
         ToDoItem.

         using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Data.Entity; namespace ToDoListLib.Models { public class ToDoItem { public int
         ToDoItemId { get; set; } public string Name { get; set; } public bool IsComplete { get; set; } } public class ToDoDb : DbContext { public DbSet<ToDoItem> ToDoItemEntries { get; set; } } }


         Esto es todo lo que necesita Entity Framework para crear la base de datos y una tabla denominada ToDoItem.

    4.   En el Explorador de soluciones, haga clic con el botón secundario en ToDoListApp y seleccione Compilar para compilar el proyecto.

CREAR SCAFFOLDING PARA CREAR, LEER, ACTUALIZAR Y ELIMINAR ELEMENTOS DE LA LISTA

ASP.NET MVC permite crear fácilmente una aplicación que realice las operaciones principales de acceso a la base de datos. La característica de scaffolding
generará código que utiliza el modelo y contexto de los datos que creó previamente para realizar acciones CRUD (crear, leer, actualizar y eliminar).




Elaborado por: Naim Jhon Cruzado Paredes
1.   En el Explorador de soluciones, haga clic con el botón secundario en Controladores, y haga clic en Agregar y después en Controlador.




   2.   En la ventana Agregar controlador, especifique HomeController como nombre del controlador y seleccione el controlador con acciones de lectura y
        escritura, y vistas mediante la plantilla de Entity Framework. La operación de scaffolding también escribirá código que utilice un modelo y un contexto
        de datos. Seleccione ToDoItem como la clase del modelo y ToDoDb como la clase del contexto de datos, como se muestra en la captura de pantalla
        siguiente:




Elaborado por: Naim Jhon Cruzado Paredes
3.   Haga clic en Agregar.
   4.   Verá un mensaje que indica que HomeController.cs ya existe. Active las casillas Sobrescribir HomeController.cs y Sobrescribir vistas asociadas, y haga
        clic en Aceptar.
   5.   Se creará un controlador y vistas para cada una de las cuatro operaciones principales de base de datos (crear, leer, actualizar y eliminar) para los
        objetos ToDoItem.
   6.   En el Explorador de soluciones, abra el archivo Web.config en el directorio raíz del proyecto ToDoListApp.
   7.   Bajo la sección <configuration> / <connectionStrings>, agregue la cadena de conexión ToDoDb como se muestra a continuación.

        <add name="ToDoDb" connectionString="data source=.SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=ToDoDb;User Instance=true;MultipleActiveResultSets=True"
        providerName="System.Data.SqlClient" />




Elaborado por: Naim Jhon Cruzado Paredes
8.   Para probar la aplicación en esta fase, presione F5 en Visual Studio para ejecutar la aplicación en el emulador de proceso. Cuando la aplicación se
        ejecute por primera vez, se creará una base de datos en su instancia local de SQL Server Express, que se instaló como parte del SDK de Windows Azure.




Elaborado por: Naim Jhon Cruzado Paredes
9.   Al hacer clic en el vínculo Crear nuevo en la página web que se muestra en el explorador, se crearán nuevas entradas de la base de datos.

CONFIGURAR SQL AZURE

   1.   El paso siguiente consiste en configurar la aplicación para almacenar datos en la nube. Primero, debe crear un servidor de SQL Azure. Inicie sesión en el
        Portal de administración de la plataforma Windows Azure, http://windows.azure.com, y haga clic en Base de datos:




   2.   En la parte superior del panel de la izquierda, haga clic en la suscripción asociada a su cuenta de SQL Azure:



Elaborado por: Naim Jhon Cruzado Paredes
3.   En el menú principal, haga clic en Crear.
   4.   En Crear servidor, seleccione la región para la que desea optimizar el acceso a la base de datos y haga clic en Siguiente:




Elaborado por: Naim Jhon Cruzado Paredes
IMPORTANTE: elija la misma región que seleccionó anteriormente al implementar la aplicación. Con ello obtendrá un rendimiento óptimo.

   5.   Elija un nombre de usuario y contraseña de administrador.

        Nota: se trata de las credenciales de la cuenta administrativa, que le proporcionan acceso total a todas las bases de datos del servidor.

   6.   Haga clic en Siguiente.
   7.   El siguiente cuadro de diálogo le pedirá que cree las reglas de firewall del servidor. Las reglas de firewall identifican direcciones IP concretas o
        intervalos de direcciones IP que se pueden comunicar directamente con su servidor de SQL Azure. Agregue una nueva regla haciendo clic en Agregar.
        En el cuadro de diálogo Agregar regla de firewall, especifique los valores mostrados en la tabla siguiente. Esto permitirá que su aplicación local se
        comunique con SQL Azure e impedirá que otras direcciones IP se comuniquen directamente con el servidor.


                     Nombre                                                                         Valor




Elaborado por: Naim Jhon Cruzado Paredes
Nombre de regla                       entorno de desarrollo local

        Inicio del intervalo de direcciones   (Escriba la dirección IP del equipo que está utilizando. La dirección IP se indica en la parte inferior del cuadro de
        IP                                    diálogo).

        Fin del intervalo de direcciones IP   (Escriba la dirección IP del equipo que está utilizando).


   8.  Haga clic en Aceptar.
   9.  Active la casilla Permitir que otros servicios de Windows Azure accedan a este servidor. Nota: SQL Azure tiene dos tipos de control de acceso: firewall y
       autenticación SQL. Debe establecer la configuración del firewall de SQL Azure para permitir las conexiones desde sus equipos.
   10. Importante: además de configurar el firewall de lado servidor de SQL Azure, debe configurar también el entorno de lado cliente para permitir las
       conexiones TCP de salida a través del puerto TCP 1433. Para obtener más información, consulte Security Guidelines for SQL Azure (en inglés).




Elaborado por: Naim Jhon Cruzado Paredes
11. Haga clic en Finalizar.
    12. Ahora verá una entrada para el nuevo servidor en el menú de la izquierda. El nombre de dominio completo del servidor utiliza el siguiente formato:

        <NombreServidor>.database.windows.net

        donde <NombreServidor> identifica el servidor. Anote el nombre del servidor, ya que lo necesitará posteriormente en el tutorial.

Puede utilizar SQL Server Management Studio o el Portal de administración de la plataforma Windows Azure para administrar su base de datos de SQL Azure.
Para conectar con SQL Azure desde SQL Server Management Studio, debe proporcionar el nombre de dominio completo del servidor:
<ServerName>.database.windows.net.



Elaborado por: Naim Jhon Cruzado Paredes
CONFIGURAR LA APLICACIÓN PARA USAR LA BASE DE DATOS

A menudo querrá usar una base de datos local diferente que utiliza en producción. Esto es muy sencillo con Visual Studio. Puede tener un archivo Web.config
diferente entre el equipo de programación e implementación en la nube creando una transformación en Web.Release.config. En esta guía, modificará
Web.Release.config para utilizar SQL Azure en lugar del servidor SQL Server local cuando se implemente en la nube:

    1.   De vuelta en Visual Studio o Visual Web Developer, en el Explorador de soluciones, abra el archivo Web.Release.config situado bajo Web.config, en el
         directorio raíz del proyecto ToDoListApp.




    2.   Bajo la sección <configuration> / <connectionStrings>, sustituya todos los elementos tal y como se muestra a continuación. Sustituya el marcador de
         posición <serverName> por el nombre del servidor que ha creado. Para <user> y <password>, escriba el nombre de usuario y la contraseña de
         administrador que creó antes.

         <connectionStrings> <add name="ToDoDb" connectionString="data source=<serverName>.database.windows.net;Initial Catalog=ToDoDb;User
         ID=<user>@<serverName>;Password=<password>;Encrypt=true;Trusted_Connection=false;MultipleActiveResultSets=True" providerName="System.Data.SqlClient"
         xdt:Transform="SetAttributes" xdt:Locator="Match(name)" /> <add name="DefaultConnection" connectionString="data source=<serverName>.database.windows.net;Initial
         Catalog=ToDoDb;User ID=<user>@<serverName>;Password=<password>;Encrypt=true;Trusted_Connection=false;MultipleActiveResultSets=True" providerName="System.Data.SqlClient"
         xdt:Transform="SetAttributes" xdt:Locator="Match(name)" /> </connectionStrings>


         Nota: el usuario administrativo tiene acceso a todas las bases de datos del servidor. Para crear un usuario de SQL Azure con permisos más limitados,
         siga los pasos para agregar usuarios a una base de datos de SQL Azure (puede estar en inglés). A continuación, modifique la cadena de conexión
         anterior de modo que se usen el usuario y la contraseña que se acaban de crear en lugar del usuario y la contraseña de administrador.

EJECUTAR LA APLICACIÓN EN LA NUBE




Elaborado por: Naim Jhon Cruzado Paredes
Ahora, como último paso, probará su aplicación accediendo a la nube de Windows Azure y accediendo a la base de datos en la nube de SQL Azure.
Implementará de nuevo su aplicación en Windows Azure:

    1.   Confirme que todavía está seleccionado el perfil de publicación correcto y haga clic en Publicar. En concreto, asegúrese de que la opción Configuración
         de compilación está establecida en Publicar para poder recuperar la cadena de conexión de Web.Release.Config que editó previamente.




         Al hacer clic en Publicar se realizará una actualización en contexto, por lo que esta operación se completará más rápidamente que la implementación
         inicial.




Elaborado por: Naim Jhon Cruzado Paredes
2.   Cuando se complete la implementación, abra la dirección URL de la aplicación desde el monitor de implementación




Elaborado por: Naim Jhon Cruzado Paredes
3.   Compruebe que la aplicación funciona según lo previsto:




Elaborado por: Naim Jhon Cruzado Paredes
4.   La aplicación se ejecuta ahora totalmente en la nube. Utiliza SQL Azure para almacenar sus datos y se ejecuta en una instancia de rol web pequeña.
        Una de las ventajas que proporciona la nube frente a ejecutar esta aplicación usando la técnica de hospedaje web estándar es la capacidad de ampliar


Elaborado por: Naim Jhon Cruzado Paredes
dinámicamente el número de instancias conforme cambie la demanda. Esta capacidad de ampliación no requerirá ningún cambio en la propia
         aplicación. Además, las actualizaciones se pueden implementar sin interrupciones del servicio, ya que Azure garantiza que haya siempre una instancia
         de rol que procese las solicitudes del usuario mientras se actualiza otra instancia.

DETENER Y ELIMINAR LA APLICACIÓN

Después de implementar la aplicación, es posible que desee deshabilitarla de modo que pueda compilar e implementar otras aplicaciones dentro de las 750
horas/mes (31 días/mes) de tiempo de servidor gratis.

Windows Azure factura las instancias de rol web por hora que se consumen del tiempo de servidor. El tiempo del servidor se consume una vez que se
implementa la aplicación, aunque no se estén ejecutando instancias y se encuentren detenidas. Una cuenta gratis incluye 750 horas/mes (31 días/mes) de
tiempo de servidor de máquina virtual dedicado para hospedar estas instancias de rol web.

Los pasos siguientes le indican cómo detener y eliminar una aplicación.

    1.   Inicie sesión en el Portal de administración de la plataforma Windows Azure, http://windows.azure.com, y haga clic en Servicios hospedados, cuentas
         de almacenamiento y CDN, y luego en Servicios hospedados:




Elaborado por: Naim Jhon Cruzado Paredes
2.   Haga clic en Detener para suspender temporalmente la aplicación. Podrá iniciarla de nuevo haciendo clic en Iniciar. Haga clic en Eliminar para quitar
        completamente la aplicación de Windows Azure sin capacidad de restaurarla.


Elaborado por: Naim Jhon Cruzado Paredes
Elaborado por: Naim Jhon Cruzado Paredes
Reforzando le copio unos prints como he logrado crear la Base datos en SQL Azure




Elaborado por: Naim Jhon Cruzado Paredes
Elaborado por: Naim Jhon Cruzado Paredes
Elaborado por: Naim Jhon Cruzado Paredes

Mais conteúdo relacionado

Mais procurados

Windows Server Update Services
Windows Server Update ServicesWindows Server Update Services
Windows Server Update Services
astrgonl
 
Computación en Windows Azure Platform 26 01-2011
Computación en Windows Azure Platform 26 01-2011Computación en Windows Azure Platform 26 01-2011
Computación en Windows Azure Platform 26 01-2011
Gisela Torres
 
Descubriendo Windows Azure Platform 16-02-2011
Descubriendo Windows Azure Platform 16-02-2011Descubriendo Windows Azure Platform 16-02-2011
Descubriendo Windows Azure Platform 16-02-2011
Gisela Torres
 

Mais procurados (20)

Licenciamiento VMware vSphere 5
Licenciamiento VMware vSphere 5Licenciamiento VMware vSphere 5
Licenciamiento VMware vSphere 5
 
Veeam backup, replicación sin coste
Veeam backup, replicación sin costeVeeam backup, replicación sin coste
Veeam backup, replicación sin coste
 
Windows Server Update Services
Windows Server Update ServicesWindows Server Update Services
Windows Server Update Services
 
Veeam Sure Backup - Presentación Técnica
Veeam Sure Backup - Presentación TécnicaVeeam Sure Backup - Presentación Técnica
Veeam Sure Backup - Presentación Técnica
 
Computación en Windows Azure Platform 26 01-2011
Computación en Windows Azure Platform 26 01-2011Computación en Windows Azure Platform 26 01-2011
Computación en Windows Azure Platform 26 01-2011
 
Guía de instalación de Instalación ESXi 5
Guía de instalación de Instalación ESXi 5Guía de instalación de Instalación ESXi 5
Guía de instalación de Instalación ESXi 5
 
Descubriendo Windows Azure Platform 16-02-2011
Descubriendo Windows Azure Platform 16-02-2011Descubriendo Windows Azure Platform 16-02-2011
Descubriendo Windows Azure Platform 16-02-2011
 
Mi primera aplicación para windows 10
Mi primera aplicación para windows 10Mi primera aplicación para windows 10
Mi primera aplicación para windows 10
 
Mi manual de VMware
Mi manual de VMwareMi manual de VMware
Mi manual de VMware
 
Microsoft and open source
Microsoft and open sourceMicrosoft and open source
Microsoft and open source
 
Instalación paquetes MSI
Instalación paquetes MSIInstalación paquetes MSI
Instalación paquetes MSI
 
Guia instalación VERDE - Virtual Bridge
Guia instalación VERDE - Virtual BridgeGuia instalación VERDE - Virtual Bridge
Guia instalación VERDE - Virtual Bridge
 
Despliegue de aplicaciones web en Microsoft Azure
Despliegue de aplicaciones web en Microsoft AzureDespliegue de aplicaciones web en Microsoft Azure
Despliegue de aplicaciones web en Microsoft Azure
 
VMware creando una VM de Android
VMware creando una VM de AndroidVMware creando una VM de Android
VMware creando una VM de Android
 
Máquinas Virtuales en Microsoft Azure con C# .Net
Máquinas Virtuales en Microsoft Azure con C# .NetMáquinas Virtuales en Microsoft Azure con C# .Net
Máquinas Virtuales en Microsoft Azure con C# .Net
 
Virtualizacion para entornos de prueba y desarrollo
Virtualizacion para entornos de prueba y desarrolloVirtualizacion para entornos de prueba y desarrollo
Virtualizacion para entornos de prueba y desarrollo
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
 
Guía de actualización de ESXi 4 a 5
Guía de actualización de ESXi 4 a 5Guía de actualización de ESXi 4 a 5
Guía de actualización de ESXi 4 a 5
 
MANUAL DE VISUAL BASIC. 2010
MANUAL DE VISUAL BASIC. 2010MANUAL DE VISUAL BASIC. 2010
MANUAL DE VISUAL BASIC. 2010
 
Implantación de xen server
Implantación de xen serverImplantación de xen server
Implantación de xen server
 

Destaque

Como crear una base de datos con visual basic
Como crear una base de datos con visual basicComo crear una base de datos con visual basic
Como crear una base de datos con visual basic
Alberto Vargas
 
Ejercicios paso-a-paso-access-2010
Ejercicios paso-a-paso-access-2010Ejercicios paso-a-paso-access-2010
Ejercicios paso-a-paso-access-2010
Felipe Laguado
 
Ejercicio completo colegio
Ejercicio completo colegioEjercicio completo colegio
Ejercicio completo colegio
gusanchez2668
 
Paginas de matematicas
Paginas de matematicasPaginas de matematicas
Paginas de matematicas
espanol
 

Destaque (18)

Conexión a Bases de Datos Infomix con Visual Basic . Net
Conexión a Bases de Datos Infomix con Visual Basic . NetConexión a Bases de Datos Infomix con Visual Basic . Net
Conexión a Bases de Datos Infomix con Visual Basic . Net
 
Visual studio.net 2010 (life-runs-on-code)
Visual studio.net 2010 (life-runs-on-code)Visual studio.net 2010 (life-runs-on-code)
Visual studio.net 2010 (life-runs-on-code)
 
Base datos acces final
Base datos  acces finalBase datos  acces final
Base datos acces final
 
Fundamentos de Programación Visual Basic 2010
Fundamentos de Programación Visual Basic 2010Fundamentos de Programación Visual Basic 2010
Fundamentos de Programación Visual Basic 2010
 
Informatica microsoft acces
Informatica microsoft accesInformatica microsoft acces
Informatica microsoft acces
 
Contraseña y usuario access y visual basic 2010
Contraseña y usuario access y visual basic 2010Contraseña y usuario access y visual basic 2010
Contraseña y usuario access y visual basic 2010
 
Entorno de visual studio
Entorno de visual studioEntorno de visual studio
Entorno de visual studio
 
Visual studio 2010
Visual studio 2010Visual studio 2010
Visual studio 2010
 
Curso.de.introducción.net.con.visual.basic.2010
Curso.de.introducción.net.con.visual.basic.2010Curso.de.introducción.net.con.visual.basic.2010
Curso.de.introducción.net.con.visual.basic.2010
 
Como crear una base de datos con visual basic
Como crear una base de datos con visual basicComo crear una base de datos con visual basic
Como crear una base de datos con visual basic
 
Visual studio 2010
Visual studio 2010Visual studio 2010
Visual studio 2010
 
Como diseñar un sistema de ventas
Como diseñar un sistema de ventasComo diseñar un sistema de ventas
Como diseñar un sistema de ventas
 
Ejercicios paso-a-paso-access-2010
Ejercicios paso-a-paso-access-2010Ejercicios paso-a-paso-access-2010
Ejercicios paso-a-paso-access-2010
 
SISTEMA DE FACTURACION (Ejemplo desarrollado)
SISTEMA DE FACTURACION (Ejemplo desarrollado)SISTEMA DE FACTURACION (Ejemplo desarrollado)
SISTEMA DE FACTURACION (Ejemplo desarrollado)
 
Ejercicio completo colegio
Ejercicio completo colegioEjercicio completo colegio
Ejercicio completo colegio
 
Ofimática
OfimáticaOfimática
Ofimática
 
Migracion a Visual Basic .NET
Migracion a Visual Basic .NETMigracion a Visual Basic .NET
Migracion a Visual Basic .NET
 
Paginas de matematicas
Paginas de matematicasPaginas de matematicas
Paginas de matematicas
 

Semelhante a Tutorial windows azure con visual studio 2010

Pasos para crear un proyecto de visual studio 2008[1][1]
Pasos para crear un proyecto de visual studio 2008[1][1]Pasos para crear un proyecto de visual studio 2008[1][1]
Pasos para crear un proyecto de visual studio 2008[1][1]
carechupona
 
como hacer una conexion con mysql
como hacer una conexion con mysqlcomo hacer una conexion con mysql
como hacer una conexion con mysql
guest8564ff
 
Curso de programación básico de android
Curso de programación básico de androidCurso de programación básico de android
Curso de programación básico de android
ENANITOS120
 
INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010
INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010
INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010
Estefy Sanchez
 
Componentes necesarios de android docx
Componentes necesarios de android  docxComponentes necesarios de android  docx
Componentes necesarios de android docx
grachika
 

Semelhante a Tutorial windows azure con visual studio 2010 (20)

Actividad 1: Mysql.Data.MySqlClient
Actividad 1: Mysql.Data.MySqlClientActividad 1: Mysql.Data.MySqlClient
Actividad 1: Mysql.Data.MySqlClient
 
Pasos para crear un proyecto de visual studio 2008[1][1]
Pasos para crear un proyecto de visual studio 2008[1][1]Pasos para crear un proyecto de visual studio 2008[1][1]
Pasos para crear un proyecto de visual studio 2008[1][1]
 
Gestionar mis proyectos con ayuda de CodeIgniter
Gestionar mis proyectos con ayuda de CodeIgniterGestionar mis proyectos con ayuda de CodeIgniter
Gestionar mis proyectos con ayuda de CodeIgniter
 
Dprn3 u3 a1_hesc
Dprn3 u3 a1_hescDprn3 u3 a1_hesc
Dprn3 u3 a1_hesc
 
como hacer una conexion con mysql
como hacer una conexion con mysqlcomo hacer una conexion con mysql
como hacer una conexion con mysql
 
Curso de programación básico de android
Curso de programación básico de androidCurso de programación básico de android
Curso de programación básico de android
 
Migrando Una Aplicación OnPremise existente a Windows Azure
Migrando Una Aplicación OnPremise existente a Windows AzureMigrando Una Aplicación OnPremise existente a Windows Azure
Migrando Una Aplicación OnPremise existente a Windows Azure
 
TUTORIAL
TUTORIALTUTORIAL
TUTORIAL
 
Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.
 
Zend Framework
Zend FrameworkZend Framework
Zend Framework
 
INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010
INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010
INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010
 
INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010
INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010
INTRODUCCIÓN A MICROSOFT VISUAL STUDIO 2010
 
Netbeans ide 7.2
Netbeans ide 7.2Netbeans ide 7.2
Netbeans ide 7.2
 
Componentes necesarios de android docx
Componentes necesarios de android  docxComponentes necesarios de android  docx
Componentes necesarios de android docx
 
Programacion web i
Programacion web iProgramacion web i
Programacion web i
 
Android
AndroidAndroid
Android
 
Zend framework
Zend frameworkZend framework
Zend framework
 
Microsoft azure presentacion
Microsoft azure presentacionMicrosoft azure presentacion
Microsoft azure presentacion
 
Servicios web
Servicios webServicios web
Servicios web
 
Tutorial aprendiendo a programar
Tutorial aprendiendo a programarTutorial aprendiendo a programar
Tutorial aprendiendo a programar
 

Mais de Naim Jhon Cruzado Paredes

Mais de Naim Jhon Cruzado Paredes (8)

Tutorial Reporting Services 2008 r2
Tutorial Reporting Services 2008  r2 Tutorial Reporting Services 2008  r2
Tutorial Reporting Services 2008 r2
 
Entity Framework ó Linq SQL - Visual Studio 2012
Entity Framework  ó  Linq SQL - Visual Studio 2012Entity Framework  ó  Linq SQL - Visual Studio 2012
Entity Framework ó Linq SQL - Visual Studio 2012
 
Configuración de IIS en windows 7 y SQL Server 2012
Configuración de IIS en windows 7 y SQL Server 2012Configuración de IIS en windows 7 y SQL Server 2012
Configuración de IIS en windows 7 y SQL Server 2012
 
Windows Intune Microsoft
Windows Intune MicrosoftWindows Intune Microsoft
Windows Intune Microsoft
 
Pasos instalar joomla 1.6.3 con WebMatrix
Pasos instalar joomla 1.6.3 con WebMatrixPasos instalar joomla 1.6.3 con WebMatrix
Pasos instalar joomla 1.6.3 con WebMatrix
 
Desarrollo y consumo de web services
Desarrollo y consumo de web servicesDesarrollo y consumo de web services
Desarrollo y consumo de web services
 
Instalación y configuración de team foundation server 2010
Instalación y configuración de team foundation server 2010Instalación y configuración de team foundation server 2010
Instalación y configuración de team foundation server 2010
 
E-Commerce con Web Matrix
E-Commerce con Web Matrix E-Commerce con Web Matrix
E-Commerce con Web Matrix
 

Último

PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
lupitavic
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
JonathanCovena1
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Francisco158360
 
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
MiNeyi1
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
JonathanCovena1
 

Último (20)

LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 

Tutorial windows azure con visual studio 2010

  • 1. ASP.NET 4 Elaborado por: Naim Jhon Cruzado Paredes
  • 2. Posibilidades ilimitadas Windows Azure es una plataforma de nube abierta y flexible que permite compilar, implementar y administrar aplicaciones rápidamente, en una red global de centros de datos administrados por Microsoft. Puede compilar aplicaciones en cualquier lenguaje, herramienta o marco. Y puede integrar sus aplicaciones de nube públicas con el entorno de TI existente. Siempre disponible. Siempre disponible. Windows Azure entrega un Contrato de nivel de servicio mensual del 99,95 % que permite compilar y ejecutar aplicaciones de alta disponibilidad sin importar la infraestructura. Proporciona revisiones automáticas del SO y de los servicios, equilibrio de carga de red integrado y resistencia ante errores de hardware. Admite un modelo de implementación con el que se puede actualizar una aplicación sin inactividad. Elaborado por: Naim Jhon Cruzado Paredes
  • 3. Abierto Windows Azure permite utilizar cualquier lenguaje, marco o herramienta para crear aplicaciones. Las características y los servicios se exponen utilizando protocolos REST abiertos. Las bibliotecas de cliente de Windows Azure están disponibles para varios lenguajes de programación, se comercializan bajo una licencia de código abierto y se hospedan en GitHub. Servidores ilimitados. Almacenamiento ilimitado. Windows Azure permite escalar aplicaciones a cualquier tamaño con facilidad. Es una plataforma de autoservicio totalmente automatizada que permite el aprovisionamiento de recursos en cuestión de minutos. El uso de recursos aumenta o disminuye de manera flexible en función de las necesidades. Solo se pagan los recursos que usa la aplicación. Windows Azure está disponible en varios centros de datos del mundo, lo que permite implementar las aplicaciones cerca de los clientes. Elaborado por: Naim Jhon Cruzado Paredes
  • 4. Gran capacidad Windows Azure proporciona una plataforma en la nube flexible que puede satisfacer los requisitos de cualquier aplicación. Permite hospedar y ampliar el código de aplicación dentro de roles de proceso de un modo totalmente confiable. Los datos se pueden almacenar en bases de datos SQL relacionales, almacenes de tablas NoSQL y almacenes de blobs no estructurados, y existe la opción de usar la funcionalidad de Hadoop e inteligencia empresarial para la minería de datos. Puede aprovechar la sólida funcionalidad de mensajería de Windows Azure para habilitar aplicaciones distribuidas escalables, así como para entregar soluciones híbridas que se ejecuten en la nube y en un entorno empresarial local. Los servicios de caché distribuida y red de entrega de contenido (CDN) de Windows Azure permiten reducir la latencia y ofrecer aplicaciones con un gran rendimiento en cualquier lugar del mundo.Empiece a crear grandes aplicaciones hoy mismo. Empiece a crear grandes aplicaciones hoy mismo…!!! Elaborado por: Naim Jhon Cruzado Paredes
  • 5. CONFIGURAR EL ENTORNO DE DESARROLLO Antes de poder empezar a desarrollar la aplicación de Windows Azure, necesita obtener las herramientas y configurar el entorno de desarrollo. 1. Para instalar el SDK de Windows Azure para .NET, haga clic en el botón siguiente: Descargar herramientas y SDK Cuando se le pida que ejecute o guarde WindowsAzureSDKForNet.exe, haga clic en Ejecutar: 2. Haga clic en Instalar en la ventana del instalador y prosiga con la instalación: Elaborado por: Naim Jhon Cruzado Paredes
  • 6. 3. Una vez completada la instalación, tendrá todo lo necesario para iniciar el desarrollo. El SDK incluye herramientas que le permiten desarrollar fácilmente aplicaciones de Windows Azure en Visual Studio. Si no tiene instalado Visual Studio, el SDK instala también la versión Visual Web Developer Express gratuita. CREAR UNA APLICACIÓN ASP.NET MVC 3 Elaborado por: Naim Jhon Cruzado Paredes
  • 7. CREAR EL PROYECTO 1. Use los privilegios de administrador para iniciar Microsoft Visual Studio 2010 o Microsoft Visual Web Developer Express 2010. Para iniciar Visual Studio con privilegios de administrador, haga clic con el botón secundario en Microsoft Visual Studio 2010 (o Microsoft Visual Web Developer Express 2010) y después haga clic en Ejecutar como administrador. El emulador de proceso de Windows Azure, descrito posteriormente en esta guía, requiere que Visual Studio se inicie con privilegios de administrador. En Visual Studio, en el menú Archivo, haga clic en Nuevo y luego en Proyecto. Elaborado por: Naim Jhon Cruzado Paredes
  • 8. 2. En Plantillas instaladas, bajo Visual C#, haga clic en Web y después en Aplicación web de ASP.NET MVC 3. 3. Asigne a la aplicación el nombre de ToDoListApp y haga clic en Aceptar: Elaborado por: Naim Jhon Cruzado Paredes
  • 9. 4. En el cuadro de diálogo Nuevo proyecto de ASP.NET MVC 3, seleccione la plantilla Aplicación de Internet y el motor de vistas Razor. Haga clic en Aceptar. MODIFICAR EL TEXTO DE LA INTERFAZ DE USUARIO EN SU APLICACIÓN 1. En el Explorador de soluciones, bajo ViewsShared, abra el archivo _Layout.cshtml. Elaborado por: Naim Jhon Cruzado Paredes
  • 10. 2. En la etiqueta de cuerpo, busque el título de la página incluido entre etiquetas h1. Cambie el texto del título de Mi Aplicación de MVC a Lista de tareas pendientes. Aquí es donde se especifican estos datos: Elaborado por: Naim Jhon Cruzado Paredes
  • 11. EJECUTAR LOCALMENTE LA APLICACIÓN Ejecute la aplicación para comprobar que funciona. 1. En Visual Studio, presione F5. 2. Debería parecer que la aplicación se ejecuta en un explorador: Elaborado por: Naim Jhon Cruzado Paredes
  • 12. PREPARAR LA APLICACIÓN PARA SU IMPLEMENTACIÓN EN WINDOWS AZURE Elaborado por: Naim Jhon Cruzado Paredes
  • 13. Ahora, preparará su aplicación para que se ejecute en un servicio hospedado de Windows Azure. La aplicación debe incluir un proyecto de implementación de Windows Azure para poder implementarse en la nube. El proyecto de implementación contiene información de configuración necesaria para ejecutar correctamente la aplicación en la nube. 1. Para hacer que su aplicación se pueda implementar en la nube, haga clic con el botón secundario en el proyecto ToDoListApp en el Explorador de soluciones y haga clic en Agregar proyecto de implementación de Windows Azure: Elaborado por: Naim Jhon Cruzado Paredes
  • 14. 2. Para habilitar el proveedor de pertenencia integrado, debe usar los proveedores universales de ASP.NET. Este proveedor habilita la funcionalidad de administración de cuentas de su aplicación. En el Explorador de soluciones, haga clic con el botón secundario en ToDoListApp y, a continuación, haga clic en Administrar paquetes NuGet. (o Agregar referencia de paquetes de biblioteca en versiones anteriores de NuGet): Elaborado por: Naim Jhon Cruzado Paredes
  • 15. 3. En el cuadro de diálogo ToDoListApp – Administrar paquetes NuGet, en la esquina superior derecha del campo Buscar en línea, escriba "proveedores universales": 4. Seleccione la opción de los proveedores universales de ASP.NET y haga clic en Instalar. Cierre el cuadro de diálogo ToDoListApp – Administrar paquetes NuGet cuando se haya completado la instalación. 5. En el Explorador de soluciones, abra el archivo Web.config en el directorio raíz del proyecto ToDoListApp. 6. En la sección <configuration> / <connectionStrings>, sustituya la cadena de conexión DefaultConnection como se muestra a continuación. <add name="DefaultConnection" connectionString="Data Source=.SQLEXPRESS;Initial Catalog=aspnet_ToDoListApp;Integrated Security=True;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" /> 7. Para probar la aplicación, presione F5. Elaborado por: Naim Jhon Cruzado Paredes
  • 16. 8. Se iniciará el emulador de proceso de Windows Azure. El emulador del proceso utiliza el equipo local para emular la ejecución de la aplicación en Windows Azure. Puede confirmar que el emulador se ha iniciado examinando la bandeja del sistema: 9. La aplicación se seguirá mostrando en un explorador como ejecutándose localmente, y tendrá el mismo aspecto y funcionamiento que cuando se ejecutó anteriormente como una aplicación de ASP.NET MVC 3 normal. Elaborado por: Naim Jhon Cruzado Paredes
  • 17. IMPLEMENTAR LA APLICACIÓN EN WINDOWS AZURE Elaborado por: Naim Jhon Cruzado Paredes
  • 18. Puede implementar su aplicación en Windows Azure a través del portal o directamente desde Visual Studio. En esta guía se muestra cómo implementar su aplicación desde Visual Studio. Para implementar la aplicación en Windows Azure, necesita una cuenta. Si no tiene ninguna, puede crear una cuenta de evaluación gratuita. Una vez que haya iniciado sesión con su cuenta, puede descargar un perfil de publicación de Windows Azure. El perfil de publicación autorizará a su equipo para publicar paquetes de implementación en Windows Azure mediante Visual Studio. CREAR UNA CUENTA DE WINDOWS AZURE 1. Abra un explorador web y vaya a http://www.windowsazure.com. Para empezar con una cuenta gratuita, haga clic en Versión de evaluación gratuita en la esquina superior derecha y siga los pasos. Elaborado por: Naim Jhon Cruzado Paredes
  • 19. 2. Su cuenta se ha creado. Ya está listo para implementar la aplicación en Windows Azure. PUBLICAR LA APLICACIÓN 1. Haga clic con el botón secundario en el proyecto ToDoListApp en el Explorador de soluciones y haga clic en Publicar en Windows Azure. Elaborado por: Naim Jhon Cruzado Paredes
  • 20. 2. La primera vez que publique, deberá descargar sus credenciales mediante el vínculo que se proporciona. 1. Haga clic en Iniciar sesión para descargar las credenciales: Elaborado por: Naim Jhon Cruzado Paredes
  • 21. 2. Inicie sesión con su Live ID: Elaborado por: Naim Jhon Cruzado Paredes
  • 22. 3. Guarde el archivo del perfil de publicación en una ubicación del disco duro donde pueda recuperarlo: Elaborado por: Naim Jhon Cruzado Paredes
  • 23. 4. Dentro del cuadro de diálogo de publicación, haga clic en Importar perfil: Elaborado por: Naim Jhon Cruzado Paredes
  • 24. 5. Busque y seleccione el archivo que acaba de descargar y, a continuación, haga clic en Siguiente. 6. Elija la suscripción de Windows Azure en la que desearía publicar: Elaborado por: Naim Jhon Cruzado Paredes
  • 25. 7. Si su suscripción todavía no contiene servicios hospedados, se le pedirá que cree uno. El servicio hospedado actúa como un contenedor de la aplicación en su suscripción de Windows Azure. Escriba un nombre que identifique su aplicación y elija la región para la que se debe optimizar la aplicación. (Es previsible que los tiempos de carga sean más rápidos para los usuarios que accedan desde esta región). Elaborado por: Naim Jhon Cruzado Paredes
  • 26. 8. Seleccione el servicio hospedado en el que desea publicar su aplicación. Deje los valores predeterminados que se muestran a continuación para las demás opciones. Haga clic en Siguiente: Elaborado por: Naim Jhon Cruzado Paredes
  • 27. 9. En la última página, haga clic en Publicar para iniciar el proceso de implementación: Elaborado por: Naim Jhon Cruzado Paredes
  • 28. Esta operación tardará aproximadamente entre cinco y siete minutos. Como es la primera vez que publica la aplicación, Windows Azure aprovisiona una máquina virtual (VM), realiza las operaciones de seguridad, crea un rol web en la máquina virtual para hospedar la aplicación, implementa el código en ese rol web y, por último, configura el equilibrador de carga y las redes para que su aplicación esté disponible públicamente. 10. Mientras la publicación está en curso, puede supervisar la actividad en la ventana Registro de actividad de Windows Azure, que se encuentra normalmente acoplada a la parte inferior de Visual Studio o Visual Web Developer: Elaborado por: Naim Jhon Cruzado Paredes
  • 29. 11. Cuando se complete la implementación, podrá ver el sitio web haciendo clic en el vínculo de dirección URL del sitio web en la ventana de supervisión: Elaborado por: Naim Jhon Cruzado Paredes
  • 30. Elaborado por: Naim Jhon Cruzado Paredes
  • 31. AGREGAR COMPATIBILIDAD CON BASES DE DATOS SQL Elaborado por: Naim Jhon Cruzado Paredes
  • 32. La plataforma Windows Azure proporciona dos opciones de almacenamiento principales:  Los servicios de almacenamiento de Windows Azure proporcionan almacenamiento de datos no relacionales en forma de blobs y tablas. Es tolerante a errores, altamente disponible y se amplía automáticamente para proporcionar almacenamiento prácticamente ilimitado.  SQL Azure proporciona un servicio de bases de datos relacionales basado en nube creado a partir de las tecnologías de SQL Server. También es tolerante a errores y altamente disponible. Está diseñado para que las herramientas y aplicaciones que funcionan con SQL Server funcionen también con SQL Azure. Una base de datos de SQL Azure puede tener un tamaño de hasta 100 GB, y puede crear todas las bases de datos que desee. En esta guía se utiliza una base de datos de SQL Azure para almacenar datos, pero la aplicación se podría crear también mediante Windows Azure Storage. Para obtener más información sobre SQL Azure y Windows Azure Storage, consulte Data Storage Offerings on the Windows Azure Platform (en inglés). CREAR CLASES PARA EL MODELO DE DATOS Usará la característica Code First de Entity Framework para crear y configurar un esquema de base de datos para la aplicación. Code First permite escribir clases estándar que Entity Framework usa para crear automáticamente las bases de datos y las tablas. 1. En el Explorador de soluciones, haga clic con el botón secundario en Modelos, y después haga clic en Agregar y luego en Clase. 2. En el cuadro de diálogo Agregar nuevo elemento, en el campo Nombre escriba ToDoModels.cs y después haga clic en Agregar. 3. Sustituya el contenido del archivo ToDoModels.cs por el código incluido a continuación. Este código define la estructura de la clase ToDoItem, que se asignará a una tabla de base de datos. También crea una clase de contexto de base de datos que le permitirá realizar operaciones en la clase ToDoItem. using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Data.Entity; namespace ToDoListLib.Models { public class ToDoItem { public int ToDoItemId { get; set; } public string Name { get; set; } public bool IsComplete { get; set; } } public class ToDoDb : DbContext { public DbSet<ToDoItem> ToDoItemEntries { get; set; } } } Esto es todo lo que necesita Entity Framework para crear la base de datos y una tabla denominada ToDoItem. 4. En el Explorador de soluciones, haga clic con el botón secundario en ToDoListApp y seleccione Compilar para compilar el proyecto. CREAR SCAFFOLDING PARA CREAR, LEER, ACTUALIZAR Y ELIMINAR ELEMENTOS DE LA LISTA ASP.NET MVC permite crear fácilmente una aplicación que realice las operaciones principales de acceso a la base de datos. La característica de scaffolding generará código que utiliza el modelo y contexto de los datos que creó previamente para realizar acciones CRUD (crear, leer, actualizar y eliminar). Elaborado por: Naim Jhon Cruzado Paredes
  • 33. 1. En el Explorador de soluciones, haga clic con el botón secundario en Controladores, y haga clic en Agregar y después en Controlador. 2. En la ventana Agregar controlador, especifique HomeController como nombre del controlador y seleccione el controlador con acciones de lectura y escritura, y vistas mediante la plantilla de Entity Framework. La operación de scaffolding también escribirá código que utilice un modelo y un contexto de datos. Seleccione ToDoItem como la clase del modelo y ToDoDb como la clase del contexto de datos, como se muestra en la captura de pantalla siguiente: Elaborado por: Naim Jhon Cruzado Paredes
  • 34. 3. Haga clic en Agregar. 4. Verá un mensaje que indica que HomeController.cs ya existe. Active las casillas Sobrescribir HomeController.cs y Sobrescribir vistas asociadas, y haga clic en Aceptar. 5. Se creará un controlador y vistas para cada una de las cuatro operaciones principales de base de datos (crear, leer, actualizar y eliminar) para los objetos ToDoItem. 6. En el Explorador de soluciones, abra el archivo Web.config en el directorio raíz del proyecto ToDoListApp. 7. Bajo la sección <configuration> / <connectionStrings>, agregue la cadena de conexión ToDoDb como se muestra a continuación. <add name="ToDoDb" connectionString="data source=.SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=ToDoDb;User Instance=true;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" /> Elaborado por: Naim Jhon Cruzado Paredes
  • 35. 8. Para probar la aplicación en esta fase, presione F5 en Visual Studio para ejecutar la aplicación en el emulador de proceso. Cuando la aplicación se ejecute por primera vez, se creará una base de datos en su instancia local de SQL Server Express, que se instaló como parte del SDK de Windows Azure. Elaborado por: Naim Jhon Cruzado Paredes
  • 36. 9. Al hacer clic en el vínculo Crear nuevo en la página web que se muestra en el explorador, se crearán nuevas entradas de la base de datos. CONFIGURAR SQL AZURE 1. El paso siguiente consiste en configurar la aplicación para almacenar datos en la nube. Primero, debe crear un servidor de SQL Azure. Inicie sesión en el Portal de administración de la plataforma Windows Azure, http://windows.azure.com, y haga clic en Base de datos: 2. En la parte superior del panel de la izquierda, haga clic en la suscripción asociada a su cuenta de SQL Azure: Elaborado por: Naim Jhon Cruzado Paredes
  • 37. 3. En el menú principal, haga clic en Crear. 4. En Crear servidor, seleccione la región para la que desea optimizar el acceso a la base de datos y haga clic en Siguiente: Elaborado por: Naim Jhon Cruzado Paredes
  • 38. IMPORTANTE: elija la misma región que seleccionó anteriormente al implementar la aplicación. Con ello obtendrá un rendimiento óptimo. 5. Elija un nombre de usuario y contraseña de administrador. Nota: se trata de las credenciales de la cuenta administrativa, que le proporcionan acceso total a todas las bases de datos del servidor. 6. Haga clic en Siguiente. 7. El siguiente cuadro de diálogo le pedirá que cree las reglas de firewall del servidor. Las reglas de firewall identifican direcciones IP concretas o intervalos de direcciones IP que se pueden comunicar directamente con su servidor de SQL Azure. Agregue una nueva regla haciendo clic en Agregar. En el cuadro de diálogo Agregar regla de firewall, especifique los valores mostrados en la tabla siguiente. Esto permitirá que su aplicación local se comunique con SQL Azure e impedirá que otras direcciones IP se comuniquen directamente con el servidor. Nombre Valor Elaborado por: Naim Jhon Cruzado Paredes
  • 39. Nombre de regla entorno de desarrollo local Inicio del intervalo de direcciones (Escriba la dirección IP del equipo que está utilizando. La dirección IP se indica en la parte inferior del cuadro de IP diálogo). Fin del intervalo de direcciones IP (Escriba la dirección IP del equipo que está utilizando). 8. Haga clic en Aceptar. 9. Active la casilla Permitir que otros servicios de Windows Azure accedan a este servidor. Nota: SQL Azure tiene dos tipos de control de acceso: firewall y autenticación SQL. Debe establecer la configuración del firewall de SQL Azure para permitir las conexiones desde sus equipos. 10. Importante: además de configurar el firewall de lado servidor de SQL Azure, debe configurar también el entorno de lado cliente para permitir las conexiones TCP de salida a través del puerto TCP 1433. Para obtener más información, consulte Security Guidelines for SQL Azure (en inglés). Elaborado por: Naim Jhon Cruzado Paredes
  • 40. 11. Haga clic en Finalizar. 12. Ahora verá una entrada para el nuevo servidor en el menú de la izquierda. El nombre de dominio completo del servidor utiliza el siguiente formato: <NombreServidor>.database.windows.net donde <NombreServidor> identifica el servidor. Anote el nombre del servidor, ya que lo necesitará posteriormente en el tutorial. Puede utilizar SQL Server Management Studio o el Portal de administración de la plataforma Windows Azure para administrar su base de datos de SQL Azure. Para conectar con SQL Azure desde SQL Server Management Studio, debe proporcionar el nombre de dominio completo del servidor: <ServerName>.database.windows.net. Elaborado por: Naim Jhon Cruzado Paredes
  • 41. CONFIGURAR LA APLICACIÓN PARA USAR LA BASE DE DATOS A menudo querrá usar una base de datos local diferente que utiliza en producción. Esto es muy sencillo con Visual Studio. Puede tener un archivo Web.config diferente entre el equipo de programación e implementación en la nube creando una transformación en Web.Release.config. En esta guía, modificará Web.Release.config para utilizar SQL Azure en lugar del servidor SQL Server local cuando se implemente en la nube: 1. De vuelta en Visual Studio o Visual Web Developer, en el Explorador de soluciones, abra el archivo Web.Release.config situado bajo Web.config, en el directorio raíz del proyecto ToDoListApp. 2. Bajo la sección <configuration> / <connectionStrings>, sustituya todos los elementos tal y como se muestra a continuación. Sustituya el marcador de posición <serverName> por el nombre del servidor que ha creado. Para <user> y <password>, escriba el nombre de usuario y la contraseña de administrador que creó antes. <connectionStrings> <add name="ToDoDb" connectionString="data source=<serverName>.database.windows.net;Initial Catalog=ToDoDb;User ID=<user>@<serverName>;Password=<password>;Encrypt=true;Trusted_Connection=false;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" xdt:Transform="SetAttributes" xdt:Locator="Match(name)" /> <add name="DefaultConnection" connectionString="data source=<serverName>.database.windows.net;Initial Catalog=ToDoDb;User ID=<user>@<serverName>;Password=<password>;Encrypt=true;Trusted_Connection=false;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" xdt:Transform="SetAttributes" xdt:Locator="Match(name)" /> </connectionStrings> Nota: el usuario administrativo tiene acceso a todas las bases de datos del servidor. Para crear un usuario de SQL Azure con permisos más limitados, siga los pasos para agregar usuarios a una base de datos de SQL Azure (puede estar en inglés). A continuación, modifique la cadena de conexión anterior de modo que se usen el usuario y la contraseña que se acaban de crear en lugar del usuario y la contraseña de administrador. EJECUTAR LA APLICACIÓN EN LA NUBE Elaborado por: Naim Jhon Cruzado Paredes
  • 42. Ahora, como último paso, probará su aplicación accediendo a la nube de Windows Azure y accediendo a la base de datos en la nube de SQL Azure. Implementará de nuevo su aplicación en Windows Azure: 1. Confirme que todavía está seleccionado el perfil de publicación correcto y haga clic en Publicar. En concreto, asegúrese de que la opción Configuración de compilación está establecida en Publicar para poder recuperar la cadena de conexión de Web.Release.Config que editó previamente. Al hacer clic en Publicar se realizará una actualización en contexto, por lo que esta operación se completará más rápidamente que la implementación inicial. Elaborado por: Naim Jhon Cruzado Paredes
  • 43. 2. Cuando se complete la implementación, abra la dirección URL de la aplicación desde el monitor de implementación Elaborado por: Naim Jhon Cruzado Paredes
  • 44. 3. Compruebe que la aplicación funciona según lo previsto: Elaborado por: Naim Jhon Cruzado Paredes
  • 45. 4. La aplicación se ejecuta ahora totalmente en la nube. Utiliza SQL Azure para almacenar sus datos y se ejecuta en una instancia de rol web pequeña. Una de las ventajas que proporciona la nube frente a ejecutar esta aplicación usando la técnica de hospedaje web estándar es la capacidad de ampliar Elaborado por: Naim Jhon Cruzado Paredes
  • 46. dinámicamente el número de instancias conforme cambie la demanda. Esta capacidad de ampliación no requerirá ningún cambio en la propia aplicación. Además, las actualizaciones se pueden implementar sin interrupciones del servicio, ya que Azure garantiza que haya siempre una instancia de rol que procese las solicitudes del usuario mientras se actualiza otra instancia. DETENER Y ELIMINAR LA APLICACIÓN Después de implementar la aplicación, es posible que desee deshabilitarla de modo que pueda compilar e implementar otras aplicaciones dentro de las 750 horas/mes (31 días/mes) de tiempo de servidor gratis. Windows Azure factura las instancias de rol web por hora que se consumen del tiempo de servidor. El tiempo del servidor se consume una vez que se implementa la aplicación, aunque no se estén ejecutando instancias y se encuentren detenidas. Una cuenta gratis incluye 750 horas/mes (31 días/mes) de tiempo de servidor de máquina virtual dedicado para hospedar estas instancias de rol web. Los pasos siguientes le indican cómo detener y eliminar una aplicación. 1. Inicie sesión en el Portal de administración de la plataforma Windows Azure, http://windows.azure.com, y haga clic en Servicios hospedados, cuentas de almacenamiento y CDN, y luego en Servicios hospedados: Elaborado por: Naim Jhon Cruzado Paredes
  • 47. 2. Haga clic en Detener para suspender temporalmente la aplicación. Podrá iniciarla de nuevo haciendo clic en Iniciar. Haga clic en Eliminar para quitar completamente la aplicación de Windows Azure sin capacidad de restaurarla. Elaborado por: Naim Jhon Cruzado Paredes
  • 48. Elaborado por: Naim Jhon Cruzado Paredes
  • 49. Reforzando le copio unos prints como he logrado crear la Base datos en SQL Azure Elaborado por: Naim Jhon Cruzado Paredes
  • 50. Elaborado por: Naim Jhon Cruzado Paredes
  • 51. Elaborado por: Naim Jhon Cruzado Paredes