2015 ii hosteoconbasededatos

35
Publicación aplicaciones web en la nube PUBLICACIÓN DE APLICACIONES WEB EN LA NUBE 1. En el explorador web (Google, Internet Explores, etc) acceder a la dirección electrónica 2. Ingresar su nombre de cuenta y password. Ing. Javier Alberto Manrique Quiñonez 1

Upload: javier-manrique

Post on 06-Dec-2015

4 views

Category:

Documents


0 download

DESCRIPTION

Hostear con base de datos

TRANSCRIPT

Page 1: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

PUBLICACIÓN DE APLICACIONES WEB EN LA NUBE

1. En el explorador web (Google, Internet Explores, etc) acceder a la dirección electrónica

2. Ingresar su nombre de cuenta y password.

Ing. Javier Alberto Manrique Quiñonez 1

Page 2: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

3. Hacer clic en en (v) para desplegar las opciones de My Websites y visualizar la configuración de la cuenta. Luego, vuelva a enrrollar las opciones de My Websites.

4. Hacer clic en la opción Database Manager.

Ing. Javier Alberto Manrique Quiñonez 2

Page 3: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

5. Hacer clic en el botón de comando “+Add Database” (Agregar Base de datos).

6. Verificar que se presente el siguiente Formulario Web del MSSQL Manager.

Ing. Javier Alberto Manrique Quiñonez 3

Page 4: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

7. Seleccionar Type Database (tipo de base de datos), Database Name (nombre de la base de datos), Database Password (Password de la base de datos) y Database Disk Quota (Tamaño de la base de datos).

8. Verificar que el Database Manager se visualice como en la siguiente figura. Se ha creado la base de datos DB..…Evento en el servidor SQL5008.myASP.NET.

Ing. Javier Alberto Manrique Quiñonez 4

Page 5: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

9. Hacer botón en el hipervínculo Connection String.

9. Verificar la cadena de conexión. Esta cadena se utilizará en el desarrollo del archivo de configuración de la Aplicación Web con ASP.net.

Ing. Javier Alberto Manrique Quiñonez 5

Page 6: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

10. Hacer clic en el vínculo Webconnect.

11. Ingresar el Password para conectarse con la base de datos y luego hacer clic en el botón de comando Connect.

Ing. Javier Alberto Manrique Quiñonez 6

Page 7: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

12. Verificar que se ha realizado la conexión.

13. Hacer clic en la opción Run Query (Ejecutar consulta).

Ing. Javier Alberto Manrique Quiñonez 7

Page 8: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

14. En el Formulario Run Query digitar el script SQL para crear las tablas de base de datos.

15. Hacer clic en el botón de comando Submit y verificar que los comandos se hayan ejecutado satisfactoriamente..

Nota: Hasta aquí ya se ha creado la base de datos DB_9CB63E_Evento, la tabla Evento y la clave primaria PK_Evento.

Ing. Javier Alberto Manrique Quiñonez 8

Page 9: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

16. Verificar que la tabla Evento se haya creado. Haga doble clic en la tabla Evento para verificar la creación de su estructura.

17. Verificar que la tabla Evento presente la estructura según el Script ejecutado. Cierre los Formularios Web abiertos y termine la Sesión en el MyASP.net. Finalmente cerrar la Pestaña https://mssql.myasp.net/default.asp del Explotrador Windows.

Ing. Javier Alberto Manrique Quiñonez 9

Page 10: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

18. Hacer clic en My Websites y site1 para verificar la configuración de la cuenta en MyASP.NET. Finalmente termine la Sesión en el MyASP.NET.

Ing. Javier Alberto Manrique Quiñonez 10

Page 11: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

16. Crear un proyecto en el VS 2013.

17. Seleccionar Visual C# - Web - Visual Studio 2012 y luego dentro de las platillas seleccionar Aplicación web

vacía de ASP.NET Visual C#. Dar como nombre SoluciónGestiónDeEventos.

Ing. Javier Alberto Manrique Quiñonez 11

Page 12: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

18. Verificar verificarla creación del proyecto.

19. Agregar una clase.

Ing. Javier Alberto Manrique Quiñonez 12

Page 13: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

20. Asignar como nombre de clase AdministradorDeConexión.cs.

21. Digitar el código siguiente.

using System.Configuration;using System.Data.SqlClient;namespace WebApplicationServicioWeb{ public class AdministradorDeConexion { public static SqlConnection getConexion() { SqlConnection conexion =

new SqlConnection(ConfigurationManager.ConnectionStrings["DbEventoConnectionString"].ConnectionString); try { return conexion; } catch (SqlException e) { return null; } } }}

Ing. Javier Alberto Manrique Quiñonez 13

Page 14: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

22. Crear una clase denominada Evento.cs y agregar el siguiente código.

Ing. Javier Alberto Manrique Quiñonez 14

Page 15: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

23. Crear una clase denominada EventoDAO.cs y digitar el siguiente código del método estático insertarRegistro.

24. Completar el código de la clase EventoDAO.cs tal como se presenta a continuación.

using System;using System.Collections.Generic;using System.Data;using System.Data.SqlClient;namespace WebApplicationGestionDeEventos {public class EventoDAO { public static Boolean insertarRegistro(Evento oEvento) { SqlConnection oSqlConnection = new SqlConnection(); try { oSqlConnection = AdministradorDeConexion.getConexion(); oSqlConnection.Open(); String sentencia = "INSERT INTO Evento(idEvento, nombreDelEvento,fechaDelEvento) VALUES(" + oEvento.idEvento + ",'" + oEvento.nombreDelEvento + "'," + oEvento.fechaDelEvento + ")"; SqlCommand oSqlCommand = new SqlCommand(sentencia, oSqlConnection); oSqlCommand.ExecuteNonQuery(); oSqlConnection.Close(); return true; } catch (System.Exception e) { oSqlConnection.Close(); return false; } }

Ing. Javier Alberto Manrique Quiñonez 15

Page 16: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

public static Boolean eliminarRegistro(Evento oEvento) { SqlConnection oSqlConnection = new SqlConnection(); try { oSqlConnection = AdministradorDeConexion.getConexion(); oSqlConnection.Open(); string sentencia = "DELETE FROM Evento WHERE idEvento =" + oEvento.idEvento; SqlCommand oSqlCommand = new SqlCommand(sentencia, oSqlConnection); oSqlCommand.ExecuteNonQuery(); oSqlConnection.Close(); return true; } catch (System.Exception e) { oSqlConnection.Close(); return false; } }

public static Evento consultarRegistro(Evento oEvento) { SqlConnection oSqlConnection = new SqlConnection(); try { oSqlConnection = AdministradorDeConexion.getConexion(); oSqlConnection.Open(); string sentencia = "SELECT * FROM Evento WHERE idEvento =" + oEvento.idEvento; SqlCommand oSqlCommand = new SqlCommand(sentencia, oSqlConnection); SqlDataReader oSqlDataReader = oSqlCommand.ExecuteReader(); if (oSqlDataReader.Read()) { Evento oEventoTemporal = new Evento();

oEvento.idEvento = ((int) oSqlDataReader["idEvento"]); oEvento.nombreDelEvento = (string) (oSqlDataReader["nombreDelEvento"].ToString()); oEvento.fechaDelEvento = oSqlDataReader["fechaDelEvento"].ToString();

oSqlDataReader.Close(); return oEventoTemporal; } else { return null; } } catch (System.Exception e) { oSqlConnection.Close(); return null; } } public static Boolean modificarRegistro(Evento oEvento) { SqlConnection oSqlConnection = new SqlConnection(); try { oSqlConnection = AdministradorDeConexion.getConexion(); oSqlConnection.Open(); string sentencia = "UPDATE Evento SET nombreDelEvento ='"+oEvento.nombreDelEvento.Trim() + "' , " + "fechaDelEvento ='"+oEvento.fechaDelEvento.Trim() + "' WHERE idEvento =" + oEvento.idEvento; SqlCommand oSqlCommand = new SqlCommand(sentencia, oSqlConnection); oSqlCommand.ExecuteNonQuery(); oSqlConnection.Close(); return true; }

Ing. Javier Alberto Manrique Quiñonez 16

Page 17: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

catch (System.Exception e) { oSqlConnection.Close(); return false; } }

public static int buscarRegistro(Evento oEvento) { SqlConnection oSqlConnection = new SqlConnection(); Evento oEventoTemporal = new Evento(); try { oSqlConnection = AdministradorDeConexion.getConexion(); oSqlConnection.Open(); String sentencia = "SELECT * FROM Evento WHERE idEvento=" + oEvento.idEvento; SqlCommand oSqlCommand = new SqlCommand(sentencia, oSqlConnection); SqlDataReader oSqlDataReader = oSqlCommand.ExecuteReader(); if (oSqlDataReader.Read()) { oEvento.idEvento = ((int) oSqlDataReader["idEvento"]); oEvento.nombreDelEvento = ((String) oSqlDataReader["nombreDelEvento"]); oEvento.fechaDelEvento = ((String) oSqlDataReader["fechaDeEvento"]);

oSqlDataReader.Close(); oSqlConnection.Close(); return oEventoTemporal.idEvento; } return -99; } catch (System.Exception e) { oSqlConnection.Close(); return -99; } }

public static List<Evento> obtenerDatosEnList() { SqlConnection oSqlConnection = new SqlConnection(); List<Evento> oListEvento = new List<Evento>(); try { oSqlConnection = AdministradorDeConexion.getConexion(); oSqlConnection.Open(); String sentencia = "SELECT * FROM Evento "; SqlCommand oSqlCommand = new SqlCommand(sentencia, oSqlConnection); SqlDataReader oSqlDataReader = oSqlCommand.ExecuteReader(); Evento oEvento; while (oSqlDataReader.Read()) { oEvento = new Evento(); oEvento.idEvento = ((int) oSqlDataReader["idEvento"]); oEvento.nombreDelEvento = ((String) oSqlDataReader["nombreDelEvento"]); oEvento.fechaDelEvento = ((String) oSqlDataReader["fechaDelEvento"]); oListEvento.Add(oEvento); } oSqlDataReader.Close(); oSqlConnection.Close(); return oListEvento; } catch (System.Exception e) { oSqlConnection.Close(); return null; } }

Ing. Javier Alberto Manrique Quiñonez 17

Page 18: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

public static DataTable GetEvento() { SqlConnection oSqlConnection = AdministradorDeConexion.getConexion(); oSqlConnection.Open(); string sentencia = "SELECT * FROM Evento"; SqlCommand oSqlCommand = new SqlCommand(sentencia, oSqlConnection); SqlDataAdapter oSqlDataAdapter = new SqlDataAdapter(oSqlCommand); DataTable oDataTable = new DataTable(); oSqlDataAdapter.Fill(oDataTable); oSqlConnection.Close(); return oDataTable; } }}

25. Agregar un formulario Web Form.

26. Especificar el nombre para el elemento: WebFormEventoABCM.aspx

Ing. Javier Alberto Manrique Quiñonez 18

Page 19: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

27. Verificar que el Explorador de soluciones presente el Formulario Web creado.

28. Agregar el siguiente código en WebFormEventoABCM.aspx

Ing. Javier Alberto Manrique Quiñonez 19

Page 20: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

29. Completar el código en WebFormEventoABCM.aspx.

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebFormEventoABCM.aspx.cs" Inherits="WebApplicationGestionDeEventos.WebFormABCM" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Evento </title></head><body> <form id="form1" runat="server"> <asp:Label ID="LabelTitulo" runat="server" Text="Insertar Evento"></asp:Label> <br /> <asp:Label ID="LabelIdEvento" runat="server" Text="idEvento : "></asp:Label> <asp:TextBox ID="TextBoxIdEvento" runat="server"></asp:TextBox> <br /> <asp:Label ID="LabelNombreDelEvento" runat="server" Text="nombreDelEvento : "></asp:Label> <asp:TextBox ID="TextBoxNombreDelEvento" runat="server"></asp:TextBox> <br /> <asp:Label ID="LabelFechaDelEvento" runat="server" Text="fechaDelEvento : "></asp:Label> <asp:TextBox ID="TextBoxFechaDelEvento" runat="server"></asp:TextBox> <br />

<asp:Button ID ="ButtonInsertarRegistro" runat="server" Text="InsertarRegistro" OnClick="ButtonInsertarRegistro_Click" />

<br/> <br/> <table> <tr> <td> <asp:GridView ID="GridViewEvento" runat="server" AutoGenerateColumns="False" DataKeyNames="idEvento" OnRowEditing="GridViewEvento_RowEditing" OnRowCancelingEdit="GridViewEvento_RowCancelingEdit" OnRowUpdating="GridViewEvento_RowUpdating" OnRowDeleting="GridViewEvento_RowDeleting"> <Columns> <asp:TemplateField HeaderText="idEvento"> <EditItemTemplate> <asp:TextBox ID="TextBoxIdEvento" runat="server" ReadOnly="true" Text='<%#Bind("idEvento")%>'></asp:TextBox> </EditItemTemplate> <ItemTemplate> <asp:Label ID="LabelIdEvento" runat="server" Text='<%#Bind("idEvento")%>'> </asp:Label> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="nombreDelEvento"> <EditItemTemplate> <asp:TextBox ID="TextBoxNombreDelEvento" runat="server" Text='<%#Bind("nombreDelEvento")%>'></asp:TextBox>

Ing. Javier Alberto Manrique Quiñonez 20

Page 21: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

</EditItemTemplate> <ItemTemplate> <asp:Label ID ="LabelNombreDelEvento" runat="server" Text ='<%#Bind("nombreDelEvento")%>'></asp:Label> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="fechaDelEvento"> <EditItemTemplate> <asp:TextBox ID ="TextBoxFechaDelEvento" runat="server"

Text='<%#Bind("fechaDelEvento")%>'></asp:TextBox> </EditItemTemplate> <ItemTemplate> <asp:Label ID="LabelfechaDelEvento" runat="server" Text='<%#Bind("fechaDelEvento")%>'></asp:Label> </ItemTemplate> </asp:TemplateField> <asp:CommandField ShowEditButton="True" /> <asp:CommandField ShowDeleteButton="True" /> </Columns> </asp:GridView> </td> </tr> </table> </form></body></html>

30. Hacer clic en la pestaña Diseño para visualizar el diseño del Formulario Web.

Ing. Javier Alberto Manrique Quiñonez 21

Page 22: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

31. Pulsar las teclas Function + F7 para ingresar el código de la página web.

32. Digitar el siguiente código para completar

using System;using System.Data;using System.Web.UI;using System.Web.UI.WebControls;namespace WebApplicationGestionDeEventos{ public partial class WebFormABCM : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { LLenar_Grilla(); } } public void LLenar_Grilla() { DataTable oDataTable = new DataTable(); oDataTable = EventoDAO.GetEvento(); GridViewEvento.DataSource = oDataTable; GridViewEvento.DataBind(); } protected void GridViewEvento_RowEditing(object sender, GridViewEditEventArgs e) { try { GridViewEvento.EditIndex = e.NewEditIndex; LLenar_Grilla(); } catch (Exception) { throw; } }

Ing. Javier Alberto Manrique Quiñonez 22

Page 23: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

protected void GridViewEvento_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { try { GridViewEvento.EditIndex = -1; LLenar_Grilla(); } catch (Exception) { throw; }

} protected void GridViewEvento_RowUpdating(object sender, GridViewUpdateEventArgs e) { try { Evento oEvento = new Evento(); TextBox oTextBox = new TextBox();

oTextBox = (TextBox)GridViewEvento.Rows[e.RowIndex].FindControl("TextBoxIdEvento"); oEvento.idEvento = Convert.ToInt32(oTextBox.Text);

oTextBox = (TextBox)GridViewEvento.Rows[e.RowIndex].FindControl("TextBoxNombreDelEvento"); oEvento.nombreDelEvento = oTextBox.Text;

oTextBox = (TextBox)GridViewEvento.Rows[e.RowIndex].FindControl("TextBoxFechaDelEvento"); oEvento.fechaDelEvento = oTextBox.Text.Substring(0, 10);

bool resultado = EventoDAO.modificarRegistro(oEvento);

GridViewEvento.EditIndex = -1; LLenar_Grilla(); } catch (Exception) { throw; } }

protected void GridViewEvento_RowDeleting(object sender, GridViewDeleteEventArgs e) { Evento oEvento = new Evento(); oEvento.idEvento = Convert.ToInt32(GridViewEvento.DataKeys[e.RowIndex].Values["idEvento"].ToString()); bool resultado = EventoDAO.eliminarRegistro(oEvento); GridViewEvento.EditIndex = -1; LLenar_Grilla(); }

protected void ButtonInsertarRegistro_Click(object sender, EventArgs e) { Evento oEvento = new Evento(); oEvento.idEvento = Int32.Parse(TextBoxIdEvento.Text); oEvento.nombreDelEvento = TextBoxNombreDelEvento.Text; oEvento.fechaDelEvento = TextBoxFechaDelEvento.Text; bool resultado = EventoDAO.insertarRegistro(oEvento); LLenar_Grilla(); } }}

Ing. Javier Alberto Manrique Quiñonez 23

Page 24: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

33. Hacer doble clic en el objeto Web.config para modificar la configuración.

34. Modificar el código del objeto Web.config como se presenta a continuación.

<?xml version="1.0"?><!-- Para obtener más información sobre cómo configurar la aplicación de ASP.NET, visite http://go.microsoft.com/fwlink/?LinkId=169433 --><configuration> <connectionStrings> <add name = "DbEventoConnectionString" connectionString = "Data Source = SQL5016.myASP.NET; Initial Catalog = DB_9CB63E_Evento; User Id = DB_9CB63E_Primera_admin; Password = jamq12345;" providerName = "System.Data.SqlClient"/> </connectionStrings> <system.web> <compilation debug="true"/> </system.web></configuration>

Ing. Javier Alberto Manrique Quiñonez 24

Page 25: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

35. Hacer clic derecho en WebApplicationGestiónDeEventos y seleccionar Publicar.

Ing. Javier Alberto Manrique Quiñonez 25

Page 26: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

36. En Publicación Web, seleccione Personalizado.

37. En Perfil personalizado nuevo escriba PerfilPublicaciónEnLaNubeConBaseDeDatos.

Ing. Javier Alberto Manrique Quiñonez 26

Page 27: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

38. Hacer clic derecho en WebApplicationGestiónDeEventos y seleccionar Publicar. Ingresar los datos solicitados. Los datos solicitados tienen que estar sincronizados con la cuenta en el Hosting myASP.NET. Luego hacer clic en el botón de comando Siguiente.

39. Configurar la publicación. Luego hacer clic en el botón de comando Siguiente.

Ing. Javier Alberto Manrique Quiñonez 27

Page 28: 2015 II HosteoConBaseDeDatos

Publicación aplicaciones web en la nube

40. En el Formulario Vista Previa hacer clic en el botón Publicar.

41. Verifivcar en la ventana Actividad de publicación web que el sitio se ha publicado correctamente.

42. Ejecutar el el Explorador web la página creada:

http://jmanriqueq02-001-site1.myasp.net/WebFormEventoABCM.aspx

Ing. Javier Alberto Manrique Quiñonez 28