![Page 1: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/1.jpg)
Facultad de Estadística e Informática
BASES DE DATOS AVANZADAS
![Page 2: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/2.jpg)
MVC – Clase 20 MODEL VIEW CONTROLLER
![Page 3: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/3.jpg)
Referencias Microsoft Virtual Academy. (9 agosto de 2014). Introduction to ASP.NET MVC. Obtenido de: https://mva.microsoft.com/en-US/training-courses/introduction-to-asp-net-mvc-8322?l=nKZwZ8Zy_3504984382
Rick Anderson. (28 sep de 2015). Getting Started with ASP.NET MVC 5. Obtenido de https://docs.microsoft.com/en-us/aspnet/mvc/overview/getting-started/introduction/getting-started
Nemanja, Kojic. ASP.NET MVC 5. Introducing ASP.NET MVC5. Microsoft. Obtenido de http://rti.etf.bg.ac.rs/rti/si3iep/vezbe-2014/ASP%20.NET%20MVC.pdf
![Page 4: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/4.jpg)
Proyecto Final SISTEMA DISTRIBUIDO DE REGISTRO DE BOLETOS DE AUTOBUSES DE TRANSPORTE
![Page 5: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/5.jpg)
Descripción Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida
Desarrollado en plataforma web (ASP.NET MVC)
Catálogos: ◦ Regiones (fragmentos de la base de datos) ◦ Estados ◦ Corridas de autobuses ◦ Pasajeros ◦ Viajes (corrida + pasajero = boletos)
![Page 6: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/6.jpg)
Descripción
![Page 7: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/7.jpg)
Descripción
Región I - CENTRO
Ciudad de México
México
Prueba
Región 3 - NORTE • Chihuahua • Coahuila • Nuevo León
Región 2 - SUR • Veracruz • Tabasco • Chiapas
![Page 8: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/8.jpg)
Distribución Catálogo Descripción Datos almacenados Región Tres fragmentos en los que esta dividida
la base de datos GLOBALES
RegiónLocal Nombre del fragmento local en cada región
LOCALES
Estados Estados de la república a los que abarcan las regiones
GLOBALES
Corridas Itinerario de corridas de autobuses en cada origen regional
LOCALES
Pasajeros Catálogo de pasajeros en cada región LOCALES Viajes Boletos adquiridos por región vinculando
una corrida con un pasajero LOCALES
![Page 9: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/9.jpg)
Instalación de Visual Studio 2017 Community https://www.visualstudio.com/es/downloads/
Desarrollo de ASP.NET y web
![Page 10: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/10.jpg)
Creando un nuevo proyecto 1
2
3
4
![Page 11: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/11.jpg)
Agregando la referencia EntityFramework
![Page 12: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/12.jpg)
Agregando las conexiones de la BD distribuida
<configuration> <configSections> <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --> <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> </configSections> <connectionStrings> <add name="CentroCdMx" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\CentroCdMx.mdf;Initial Catalog=CentroCdMx;Integrated Security=True" providerName="System.Data.SqlClient" /> <add name="SurVer" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\SurVer.mdf;Initial Catalog=SurVer;Integrated Security=True" providerName="System.Data.SqlClient" /> <add name="NorteMty" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\NorteMty.mdf;Initial Catalog=NorteMty;Integrated Security=True" providerName="System.Data.SqlClient" /> </connectionStrings> <appSettings>
![Page 13: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/13.jpg)
Ayuda para el manejo de validaciones en español
![Page 14: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/14.jpg)
Ayuda para el manejo de validaciones en español $.validator.methods.range = function (value, element, param) { var globalizedValue = value.replace(",", "."); return this.optional(element) || (globalizedValue >= param[0] && globalizedValue <= param[1]); } $.validator.methods.number = function (value, element) { var globalizedValue = value.replace(",", "."); return this.optional(element) || /^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(globalizedValue); } //Date dd/MM/yyyy $.validator.methods.date = function (value, element) { var globalizedValue = value; if (globalizedValue.indexOf("/") > 0) { var date = value.split("/"); globalizedValue = date[1] + "/" + date[0] + value.substr(value.indexOf(date[1] + "/") + 2); } return this.optional(element) || !/Invalid|NaN/.test(new Date(globalizedValue).toString()); } $.extend(jQuery.validator.messages, { required: "Este campo es requerido.", remote: "Por favor corrija este campo.", email: "Por favor introduzca una dirección de correo electrónico válida.", url: "Por favor introduzca una URL válida.", date: "Por favor introduzca una fecha válida.", dateISO: "Por favor introduzca una fecha válida (ISO).", number: "Por favor introduzca un número válido.", digits: "Por favor introduzca solo dígitos.", creditcard: "Por favor introduzca un número de tarjeta de crédito válido.", equalTo: "Por favor introduzca el mismo valor nuevamente.", accept: "Por favor introduzca un valor con una extensión válida.", maxlength: jQuery.validator.format("Por favor no introduzca más de {0} caracteres."), minlength: jQuery.validator.format("Por favor introduzca al menos {0} caracteres."), rangelength: jQuery.validator.format("Por favor introduzca un valor entre {0} y {1} de longitud de caracteres."), range: jQuery.validator.format("Por favor introduzca un valor entre {0} y {1}."), max: jQuery.validator.format("Por favor introduzca un valor menor o igual a {0}."), min: jQuery.validator.format("Por favor introduzca un valor mayor o igual a {0}.") });
![Page 15: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/15.jpg)
Filtro para verificar que se ha seleccionado una Región
![Page 16: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/16.jpg)
Filtro para verificar que se ha seleccionado una Región
![Page 17: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/17.jpg)
Filtro para verificar que se ha seleccionado una Región using System.Web; using System.Web.Mvc; using System.Web.Routing; namespace ProyectoADO.Filters { public class VerificaRegionAttribute : ActionFilterAttribute { public override void OnActionExecuting(ActionExecutingContext filterContext) { base.OnActionExecuting(filterContext); // Si no se ha seleccionado la región, cancelamos la petición if (HttpContext.Current.Session["RegionId"] == null) filterContext.Result = new RedirectToRouteResult( new RouteValueDictionary(new { controller = "Region", action = "Index" })); } } }
![Page 18: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/18.jpg)
Agregando los Modelos
Modelo
Vista Controlador
![Page 19: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/19.jpg)
Modelo Region
![Page 20: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/20.jpg)
Modelo Region using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace ProyectoADO.Models { public class Region { [Key] [DatabaseGenerated(DatabaseGeneratedOption.None)] public int RegionId { get; set; } [Required] [Display(Name = "Región")] public string Nombre { get; set; } } public static class CRegionId { public const int CENTRO = 1; public const int SUR = 2; public const int NORTE = 3; } }
![Page 21: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/21.jpg)
Modelo RegionLocal
![Page 22: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/22.jpg)
Modelo RegionLocal
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace ProyectoADO.Models { public class RegionLocal { [Key] [DatabaseGenerated(DatabaseGeneratedOption.None)] public int RegionLocalId { get; set; } [Required] public string Nombre { get; set; } } }
![Page 23: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/23.jpg)
Modelo Estado
![Page 24: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/24.jpg)
Modelo Estado using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace ProyectoADO.Models { public class Estado { [Key] [DatabaseGenerated(DatabaseGeneratedOption.None)] public int EstadoId { get; set; } [Required] [Display(Name = "Estado")] public string Nombre { get; set; } [Required] public string NombreAbreviado { get; set; } [Required] public int RegionId { get; set; } [ForeignKey("RegionId")] public Region Region { get; set; } } }
![Page 25: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/25.jpg)
Modelo Pasajero
![Page 26: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/26.jpg)
Modelo Pasajero using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace ProyectoADO.Models { public class Pasajero { public int PasajeroId { get; set; } [Required] [Display(Name = "Estado")] public int EstadoId { get; set; } [ForeignKey("EstadoId")] public Estado Estado { get; set; } [Required] public string Nombre { get; set; } [Required] [EmailAddress] public string Correo { get; set; } } }
![Page 27: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/27.jpg)
Modelo Corrida
![Page 28: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/28.jpg)
Modelo Corrida using System; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace ProyectoADO.Models { public class Corrida { public int CorridaId { get; set; } [Required] [Display(Name = "Origen")] public int OrigenId { get; set; } [ForeignKey("OrigenId")] public Estado Origen { get; set; } [Required] [Display(Name = "Destino")] public int DestinoId { get; set; } [ForeignKey("DestinoId")] public Estado Destino { get; set; } [Required(ErrorMessage = "El campo {0} debe ser una fecha válida.")] [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy HH:mm}")] public DateTime Fecha { get; set; } [Required] [DisplayFormat(DataFormatString = "{0:C0}", ApplyFormatInEditMode = false)] public decimal Precio { get; set; } [Required] [Range(0, 50, ErrorMessage = "Se permite un valor entre 1 y 50 asientos")] public int Asientos { get; set; } } }
![Page 29: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/29.jpg)
Modelo Viaje
![Page 30: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/30.jpg)
Modelo Viaje using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace ProyectoADO.Models { public class Viaje { public int ViajeId { get; set; } [Required] public int CorridaId { get; set; } [ForeignKey("CorridaId")] public Corrida Corrida { get; set; } [Required] [Display(Name = "Pasajero")] public int PasajeroId { get; set; } [ForeignKey("PasajeroId")] public Pasajero Pasajero { get; set; } [Required] [Display(Name = "Asiento")] public int NumAsiento { get; set; } } }
![Page 31: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/31.jpg)
Agregar los DbContext para cada Región
![Page 32: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/32.jpg)
DbContext de base: BaseDbContext Para no repetir los BdSet en cada Región, creamos un BDContext base y usaremos herencia para heredar sus propiedades a las regiones
![Page 33: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/33.jpg)
DbContext de base: BaseDbContext
using ProyectoADO.Models; using System.Data.Entity; namespace ProyectoADO.DbContexts { public class BaseDbContext : DbContext { public DbSet<Region> Fragmentos { get; set; } public DbSet<RegionLocal> FragmentoLocal { get; set; } public DbSet<Corrida> Corridas { get; set; } public DbSet<Estado> Estados { get; set; } public DbSet<Pasajero> Pasajeros { get; set; } public DbSet<Viaje> Viajes { get; set; } } }
![Page 34: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/34.jpg)
DbContext CENTRO: CentroDbContext Para no repetir los BdSet en cada Región, creamos un BDContext base y usaremos herencia para heredar sus propiedades a las regiones
![Page 35: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/35.jpg)
DbContext CENTRO: CentroDbContext
using ProyectoADO.DbContexts; namespace ProyectoADO.DbContexts { public class CentroDbContext : BaseDbContext { } }
![Page 36: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/36.jpg)
DbContext SUR: SurDbContext Para no repetir los BdSet en cada Región, creamos un BDContext base y usaremos herencia para heredar sus propiedades a las regiones
![Page 37: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/37.jpg)
DbContext SUR: SurDbContext
using ProyectoADO.DbContexts; namespace ProyectoADO.DbContexts { public class SurDbContext : BaseDbContext { } }
![Page 38: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/38.jpg)
DbContext NORTE: NorteDbContext Para no repetir los BdSet en cada Región, creamos un BDContext base y usaremos herencia para heredar sus propiedades a las regiones
![Page 39: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/39.jpg)
DbContext NORTE: NorteDbContext
using ProyectoADO.DbContexts; namespace ProyectoADO.DbContexts { public class NorteDbContext : BaseDbContext { } }
![Page 40: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/40.jpg)
Gracias por su atención
![Page 41: BASES DE DATOS AVANZADAS - uv.mx · Sistema de registro de boletos de agencia de transporte terrestre para ejemplificar el uso en la práctica de una base de datos distribuida Desarrollado](https://reader031.vdocument.in/reader031/viewer/2022022623/5bb604e909d3f2b63a8df42f/html5/thumbnails/41.jpg)
Referencias Microsoft Virtual Academy. (9 agosto de 2014). Introduction to ASP.NET MVC. Obtenido de: https://mva.microsoft.com/en-US/training-courses/introduction-to-asp-net-mvc-8322?l=nKZwZ8Zy_3504984382
Rick Anderson. (28 sep de 2015). Getting Started with ASP.NET MVC 5. Obtenido de https://docs.microsoft.com/en-us/aspnet/mvc/overview/getting-started/introduction/getting-started
Nemanja, Kojic. ASP.NET MVC 5. Introducing ASP.NET MVC5. Microsoft. Obtenido de http://rti.etf.bg.ac.rs/rti/si3iep/vezbe-2014/ASP%20.NET%20MVC.pdf