SlideShare una empresa de Scribd logo
Accediendo a una base de datos
de MySQL con Entity Framework
Core desde ASP .NET Core y
Xamarin
Luis Beltrán
#DevNights 14 de Junio de 2019
Luis Beltrán
 Microsoft MVP en Tecnologías de
Desarrollador
 Investigador y estudiante de doctorado en la
Universidad Tomás Bata en Zlín, República
Checa.
 Docente en el Tecnológico Nacional de
México en Celaya.@darkicebeam
luis@luisbeltran.mx
 Sistema gestor de base de datos relacionales
 Licencia dual: GNU / Comercial (Oracle)
 Es de código abierto (open-source) pero es patrocinada por una empresa privada
 Versión actual: 8.0.16
 Es uno de los SGBD más populares que existen (sobre todo en ambientes web)
Características
 Relacional (integridad referencial)
 Cross-platform: Linux, Windows, MacOS
 Transaccional
 Replicación, búsqueda e indexación FULLTEXT
 Motores de almacenamiento MyISAM e InnoDB
 MyISAM
 No provee integridad de datos ni transacciones
 Desempeño más rápido en operaciones Select e Insert
 Al no manejar bloqueo de registros, puede haber un problema de desempeño al
realizar Updates
 Si una tabla “crashea”, el DBA debe reparar manualmente la tabla o reconstruirla
 InnoDB
 Maneja el principio ACID: Atomicidad, Consistencia, Aislamiento y Durabilidad en las
transacciones:
 Atomicidad: Todo o Nada
 Consistencia: Se garantiza que las transacciones no se quedan en un estado intermedio
 Aislamiento: Todas las transacciones son independientes entre sí
 Durabilidad: Se garantiza que la base de datos da seguimiento a los cambios pendientes y
estos se realizarán en algún momento
 Soporta transacciones, llaves foráneas y bloqueo a nivel de registro
 Si una tabla “crashea”, es reparada automáticamente gracias al log de transacciones
 El rendimiento es menor debido al overhead en el procesamiento
Accediendo a una base de datos de MySQL con Entity Framework Core desde ASP .NET Core y Xamarin
 Una versión extensible, ligera, multiplataforma y open-source de Entity Framework
 ORM (Object-Relational Mapper) que permite interactuar con una base de datos
utilizando objetos .NET (clases). En el caso de proyectos web, típicamente esto se hace a
través de modelos y controladores.
 Soporta varios motores de bases de datos:
 SQL Server
 SQLite
 CosmosDB
 PostgreSQL
 MySQL
 Lista completa disponible en https://docs.microsoft.com/en-us/ef/core/providers/index
Estrategia de desarrollo Code-First
 Agregar los paquetes Nuget Microsoft.EntityFrameworkCore y
Microsoft.EntityFrameworkCore.Tools al proyecto.
 Agregar el paquete del proveedor específico de base de datos.
 Crear los modelos (clases)
 Generar una clase de contexto (DbContext) utilizando la cadena de conexión
 Utilizar los comandos Add-Migration y Update-Database
Demo
 https://github.com/icebeam7/MusicDemoWebsite
 https://github.com/icebeam7/MusicMobile
Accediendo a una base de datos de MySQL con Entity Framework Core desde ASP .NET Core y Xamarin
¡Gracias por su atención!
luis@luisbeltran.mx
https://youtube.com/user/darkicebeam
https://slideshare.net/icebeam
@darkicebeam
icebeam7
luisantoniobeltran
luisbeltran.mxTomás Bata University in Zlín
Tecnológico Nacional de México en Celaya

Más contenido relacionado

PPTX
Joel Schuweiler_AWS IAM Identity Center (Single Sign On).pptx
PDF
AWS AutoScaling
PPTX
Spring Security
PPTX
WEB SERVICE SOAP, JAVA, XML, JAXWS
PPT
Selenium ppt
PDF
JPA and Hibernate
PDF
JBoss Application Server 7
PPTX
Joel Schuweiler_AWS IAM Identity Center (Single Sign On).pptx
AWS AutoScaling
Spring Security
WEB SERVICE SOAP, JAVA, XML, JAXWS
Selenium ppt
JPA and Hibernate
JBoss Application Server 7

La actualidad más candente (20)

PPTX
AWS - Autoscaling Fundamentals
PPTX
Laravel introduction
PPTX
C# Async Await
PPTX
Spring framework Controllers and Annotations
PDF
Spring Boot
PDF
Spring Framework - Core
PPTX
An Introduction To REST API
PPTX
Apex code (Salesforce)
PPTX
Spring Boot and REST API
PPT
Modelo e r
PDF
8 - Architetture Software - Architecture centric processes
PPTX
Spring Boot
PPTX
Introduction to REST - API
PPTX
REST API
PPTX
Asynchronous programming in C#
PDF
Web Development with Laravel 5
PDF
Fluentd with MySQL
PDF
Introduction to Spring Cloud
PPTX
Selenium web driver
AWS - Autoscaling Fundamentals
Laravel introduction
C# Async Await
Spring framework Controllers and Annotations
Spring Boot
Spring Framework - Core
An Introduction To REST API
Apex code (Salesforce)
Spring Boot and REST API
Modelo e r
8 - Architetture Software - Architecture centric processes
Spring Boot
Introduction to REST - API
REST API
Asynchronous programming in C#
Web Development with Laravel 5
Fluentd with MySQL
Introduction to Spring Cloud
Selenium web driver
Publicidad

Similar a Accediendo a una base de datos de MySQL con Entity Framework Core desde ASP .NET Core y Xamarin (20)

PDF
Bd T1 Eq6 Investigacionsgbd
PDF
Bd T1 Eq6 Investigacionsgbd
PPT
Introducción-a-Microsoft.NET-[parte2]
DOCX
Tres gestores de bases de datos
PPTX
Gestores de Base de Datos
PPTX
Cuadros comparativos
DOCX
Tarea bases de datos asp.net
PPTX
Sistema gestor de base de datos
PDF
Sgbd roberto escriche marcelo hualoto
PPTX
Trabajar con bases de datos desde ASP.NET
PPT
Introduccion a ORACLE
DOCX
Sistemas de gestores de base de datos
PPT
Presentación sgbd
PDF
Motor de persistencia nhibernate
PPT
Visual studio.net
PPTX
Base de datos3
DOCX
Gestores
PPTX
PPTX
Gestores de base de datos
DOCX
Sistemas de gestores de base de datos
Bd T1 Eq6 Investigacionsgbd
Bd T1 Eq6 Investigacionsgbd
Introducción-a-Microsoft.NET-[parte2]
Tres gestores de bases de datos
Gestores de Base de Datos
Cuadros comparativos
Tarea bases de datos asp.net
Sistema gestor de base de datos
Sgbd roberto escriche marcelo hualoto
Trabajar con bases de datos desde ASP.NET
Introduccion a ORACLE
Sistemas de gestores de base de datos
Presentación sgbd
Motor de persistencia nhibernate
Visual studio.net
Base de datos3
Gestores
Gestores de base de datos
Sistemas de gestores de base de datos
Publicidad

Más de Luis Beltran (20)

PPTX
AI for Accessibility.pptx
PPTX
NET Conf Bhubaneswar - Migrating your Xamarin.Forms app to .NET MAUI.pptx
PPTX
03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx
PPTX
BI LATAM Summit 2022 - Creación de soluciones de automatización serverless-...
PDF
CEIAAIT - Fundamentos y Aplicaciones de Deep Learning.pdf
PPTX
Computo en la Nube con Azure - AI Gaming Panama.pptx
PPTX
5StarsConf - Serverless Machine Learning con Azure Functions y ML.NET .pptx
PPTX
ACW - Azure Speaker Recognition Biometria de Voz.pptx
PPTX
UNICABA - Azure Machine Learning.pptx
PPTX
Azure Talks Bolivia - Aumente la confiabilidad de su negocio con Azure Anomal...
PPTX
Latino NET - Integrando WhatsApp en nuestras apps .NET con Twilio.pptx
PPTX
NOVA - Enriquecimiento de IA con Azure Cognitive Search.pptx
PPTX
Netcoreconf 2021 Realidad mixta en apps móviles con Azure Spatial Anchors y ...
PPTX
ATG Puebla - El cementerio de Microsoft.pptx
PPTX
Data-Saturday-10-Sofia-2021 Azure Video Indexer- Advanced data extraction fro...
PPTX
Azure Community Conference - Image Recognition in WhatsApp chatbot with Azure...
PPTX
Real NET Docs Show - Serverless Machine Learning v3.pptx
PPTX
Sesion 5 - Eficiencia del Rendimiento - Well Architected Backstage Tour.pptx
PPTX
XamarinExpertDay - Creating PDF files in mobile apps with PdfSharpCore and Mi...
PPTX
Latam Space Week - Clasificación de rocas espaciales por medio de IA.pptx
AI for Accessibility.pptx
NET Conf Bhubaneswar - Migrating your Xamarin.Forms app to .NET MAUI.pptx
03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx
BI LATAM Summit 2022 - Creación de soluciones de automatización serverless-...
CEIAAIT - Fundamentos y Aplicaciones de Deep Learning.pdf
Computo en la Nube con Azure - AI Gaming Panama.pptx
5StarsConf - Serverless Machine Learning con Azure Functions y ML.NET .pptx
ACW - Azure Speaker Recognition Biometria de Voz.pptx
UNICABA - Azure Machine Learning.pptx
Azure Talks Bolivia - Aumente la confiabilidad de su negocio con Azure Anomal...
Latino NET - Integrando WhatsApp en nuestras apps .NET con Twilio.pptx
NOVA - Enriquecimiento de IA con Azure Cognitive Search.pptx
Netcoreconf 2021 Realidad mixta en apps móviles con Azure Spatial Anchors y ...
ATG Puebla - El cementerio de Microsoft.pptx
Data-Saturday-10-Sofia-2021 Azure Video Indexer- Advanced data extraction fro...
Azure Community Conference - Image Recognition in WhatsApp chatbot with Azure...
Real NET Docs Show - Serverless Machine Learning v3.pptx
Sesion 5 - Eficiencia del Rendimiento - Well Architected Backstage Tour.pptx
XamarinExpertDay - Creating PDF files in mobile apps with PdfSharpCore and Mi...
Latam Space Week - Clasificación de rocas espaciales por medio de IA.pptx

Último (20)

PPTX
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
PPTX
Curso de generación de energía mediante sistemas solares
PPTX
unidad 3 tecnología 8° básico: planificación y elaboración de un objeto
PDF
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
PPTX
Propuesta BKP servidores con Acronis1.pptx
PPTX
modulo seguimiento 1 para iniciantes del
PPTX
la-historia-de-la-medicina Edna Silva.pptx
PDF
Estrategia de Apoyo de Daylin Castaño (5).pdf
PPTX
Mecanismos-de-Propagacion de ondas electromagneticas
PDF
PRESENTACIÓN GENERAL MIPIG - MODELO INTEGRADO DE PLANEACIÓN
PDF
capacitación de aire acondicionado Bgh r 410
DOCX
Guía 5. Test de orientación Vocacional 2.docx
PDF
TRABAJO DE TECNOLOGIA.pdf...........................
PDF
Tips de Seguridad para evitar clonar sus claves del portal bancario.pdf
PPTX
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
PDF
0007_PPT_DefinicionesDeDataMining_201_v1-0.pdf
PPTX
Power Point Nicolás Carrasco (disertación Roblox).pptx
PDF
Diapositiva proyecto de vida, materia catedra
PPT
Protocolos de seguridad y mecanismos encriptación
PDF
Distribucion de frecuencia exel (1).pdf
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
Curso de generación de energía mediante sistemas solares
unidad 3 tecnología 8° básico: planificación y elaboración de un objeto
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
Propuesta BKP servidores con Acronis1.pptx
modulo seguimiento 1 para iniciantes del
la-historia-de-la-medicina Edna Silva.pptx
Estrategia de Apoyo de Daylin Castaño (5).pdf
Mecanismos-de-Propagacion de ondas electromagneticas
PRESENTACIÓN GENERAL MIPIG - MODELO INTEGRADO DE PLANEACIÓN
capacitación de aire acondicionado Bgh r 410
Guía 5. Test de orientación Vocacional 2.docx
TRABAJO DE TECNOLOGIA.pdf...........................
Tips de Seguridad para evitar clonar sus claves del portal bancario.pdf
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
0007_PPT_DefinicionesDeDataMining_201_v1-0.pdf
Power Point Nicolás Carrasco (disertación Roblox).pptx
Diapositiva proyecto de vida, materia catedra
Protocolos de seguridad y mecanismos encriptación
Distribucion de frecuencia exel (1).pdf

Accediendo a una base de datos de MySQL con Entity Framework Core desde ASP .NET Core y Xamarin

  • 1. Accediendo a una base de datos de MySQL con Entity Framework Core desde ASP .NET Core y Xamarin Luis Beltrán #DevNights 14 de Junio de 2019
  • 2. Luis Beltrán  Microsoft MVP en Tecnologías de Desarrollador  Investigador y estudiante de doctorado en la Universidad Tomás Bata en Zlín, República Checa.  Docente en el Tecnológico Nacional de México en Celaya.@darkicebeam luis@luisbeltran.mx
  • 3.  Sistema gestor de base de datos relacionales  Licencia dual: GNU / Comercial (Oracle)  Es de código abierto (open-source) pero es patrocinada por una empresa privada  Versión actual: 8.0.16  Es uno de los SGBD más populares que existen (sobre todo en ambientes web)
  • 4. Características  Relacional (integridad referencial)  Cross-platform: Linux, Windows, MacOS  Transaccional  Replicación, búsqueda e indexación FULLTEXT  Motores de almacenamiento MyISAM e InnoDB
  • 5.  MyISAM  No provee integridad de datos ni transacciones  Desempeño más rápido en operaciones Select e Insert  Al no manejar bloqueo de registros, puede haber un problema de desempeño al realizar Updates  Si una tabla “crashea”, el DBA debe reparar manualmente la tabla o reconstruirla  InnoDB  Maneja el principio ACID: Atomicidad, Consistencia, Aislamiento y Durabilidad en las transacciones:  Atomicidad: Todo o Nada  Consistencia: Se garantiza que las transacciones no se quedan en un estado intermedio  Aislamiento: Todas las transacciones son independientes entre sí  Durabilidad: Se garantiza que la base de datos da seguimiento a los cambios pendientes y estos se realizarán en algún momento  Soporta transacciones, llaves foráneas y bloqueo a nivel de registro  Si una tabla “crashea”, es reparada automáticamente gracias al log de transacciones  El rendimiento es menor debido al overhead en el procesamiento
  • 7.  Una versión extensible, ligera, multiplataforma y open-source de Entity Framework  ORM (Object-Relational Mapper) que permite interactuar con una base de datos utilizando objetos .NET (clases). En el caso de proyectos web, típicamente esto se hace a través de modelos y controladores.  Soporta varios motores de bases de datos:  SQL Server  SQLite  CosmosDB  PostgreSQL  MySQL  Lista completa disponible en https://docs.microsoft.com/en-us/ef/core/providers/index
  • 8. Estrategia de desarrollo Code-First  Agregar los paquetes Nuget Microsoft.EntityFrameworkCore y Microsoft.EntityFrameworkCore.Tools al proyecto.  Agregar el paquete del proveedor específico de base de datos.  Crear los modelos (clases)  Generar una clase de contexto (DbContext) utilizando la cadena de conexión  Utilizar los comandos Add-Migration y Update-Database
  • 11. ¡Gracias por su atención! luis@luisbeltran.mx https://youtube.com/user/darkicebeam https://slideshare.net/icebeam @darkicebeam icebeam7 luisantoniobeltran luisbeltran.mxTomás Bata University in Zlín Tecnológico Nacional de México en Celaya