TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

31
Facultad de Estadística e Informática TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Transcript of TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Page 1: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Page 2: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Clase 23

▪ Tema 4: Servicios Web RESTful

Page 3: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Clase 23

▪ Práctica. Creando una aplicación Web y una Web API para acceder a una base de datos.

Page 4: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Clase 23▪ Práctica. Creando una aplicación Web y una Web API:✓ Página HTML: MVC ASP.NET

✓ Manejo de solicitudes AJAX y retorno de datos JSON: ASP .NET Web API

✓ Enlazar los elementos HTML a los datos JSON: jQuery

✓Base de datos: Entity Framework

Page 5: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Creación del proyecto

Page 6: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Creación del proyecto

Page 7: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

MODELOS

Page 8: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Creación de Modelos

•Author

•Book

Page 9: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Creación de la clase Author

namespace BookService.Models{

public class Author{

public int Id { get; set; }[Required]public string Name { get; set; }

}}

Page 10: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Creación de la clase Booknamespace BookService.Models{

public class Book{

public int Id { get; set; }[Required]public string Title { get; set; }public int Year { get; set; }public decimal Price { get; set; }public string Genre { get; set; }

// Llave foráneapublic int AuthorId { get; set; }// Propiedad para navegar al autor relacionadopublic Author Author { get; set; }

}}

Page 11: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

CONTROLADORES

Page 12: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Eliminar Controlador ejemplo

Eliminar

Page 13: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

COMPILAR el proyecto para reflejar las clases del Modelo

Page 14: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Agregar Controladores

Page 15: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Agregando controladores

Page 16: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Agregando controladores

Page 17: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Agregando controladores

Compilar el proyecto nuevamente

Page 18: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Agregando controladores

Page 19: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Creación de Base de Datos

La base de datos se creará con el enfoque “CODE-FIRST” con ENTITY FRAMEWORK:

Clases C# que corresponden a tablas en la BD.

ENTITY FRAMEWORK

Base de Datos

Page 20: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Creación de Base de Datos

EntityFramework

Page 21: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Usando “Code First Migrations” para inicializar la base de datos

Page 22: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Usando “Code First Migrations” para inicializar la base de datos

Agregará la carpeta Migrations

Page 23: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Usando “Code First Migrations” para inicializar la base de datos

Page 24: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Usando “Code First Migrations” para inicializar la base de datos

✓ Se agregará la carpeta Migrations✓ Abrir el archivo configuration.cs y agregar:

using BookService.Models;

Page 25: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Usando “Code FirstMigrations” para inicializar la base de datos

context.Authors.AddOrUpdate(x => x.Id,new Author() { Id = 1, Name = "Jane Austen" },new Author() { Id = 2, Name = "Charles Dickens" },new Author() { Id = 3, Name = "Miguel de Cervantes" });

context.Books.AddOrUpdate(x => x.Id,new Book(){

Id = 1,Title = "Pride and Prejudice",Year = 1813,AuthorId = 1,Price = 9.99M,Genre = "Comedy of manners"

},new Book(){

Id = 2,Title = "Northanger Abbey",Year = 1817,AuthorId = 1,Price = 12.95M,Genre = "Gothic parody"

},new Book(){

Id = 3,Title = "David Copperfield",Year = 1850,AuthorId = 2,Price = 15,Genre = "Bildungsroman"

},new Book(){

Id = 4,Title = "Don Quixote",Year = 1617,AuthorId = 3,Price = 8.95M,Genre = "Picaresque"

});

Agregar el siguiente código en el método Configuration.Seed

Page 26: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Usando “Code First Migrations” para inicializar la base de datos

En la consola escribir:

Add-Migration InitialUpdate-Database

Page 27: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Usando “Code First Migrations” para inicializar la base de datos

I. Ver la base de datos creada en el Explorador de Objetos de SQL Server

Page 28: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Usando “Code First Migrations” para inicializar la base de datos

I. Depurar en proyecto

Page 29: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Facultad de Estadística e Informática

Usando “Code FirstMigrations” para inicializar la base de datos

Page 30: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Gracias por su atención

Page 31: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

ReferenciasASP.NET MVC 4 and the Web API. (diciembre de 2012). Jaime Kurtz. aPress. Obtenido de: http://sd.blackball.lv/library/ASP.NET_MVC_4_and_the_Web_API.pdf

REST Vs Web Services (2006). Rafael Navarro. Modelado, Diseño e Implementación de Servicios Web. Obtenido de: http://users.dsic.upv.es/~rnavarro/NewWeb/docs/RestVsWebServices.pdf

RESTful Web Services(2007). Leonard Richarson & Sam Ruby. O’Really. Obtenido de: https://www.crummy.com/writing/RESTful-Web-Services/RESTful_Web_Services.pdf

Getting Started with ASP.NET Web API 2. (2015). Mike Watson. Microsoft Docs. Obtenido de: https://docs.microsoft.com/en-us/aspnet/web-api/overview/getting-started-with-aspnet-web-api/tutorial-your-first-web-api