Don't miss out! Offer ends June 20, 2021.
Only available to new email subscribers.
Don't miss out! Offer ends June 20, 2021.
Only available to new email subscribers.
Cada solución de EF Core tendrá al menos una implementación de DbContext. ¿Qué es DbContext? DbContext es una clase base especializada que rastrea nuestras operaciones en memoria, lo que nos permite escribir y ejecutar consultas, rastrear cambios que podemos persistir en nuestra base de datos e interactuar con nuestro motor de base de datos de manera indirecta o directa en circunstancias excepcionales.
Para comenzar a usar EF Core 5, necesitamos definir una clase que se derive de DbContext y contenga nuestros modelos. Normalmente, nuestras clases se asignarán una a una con las tablas de nuestra base de datos, y las relaciones entre las tablas se definen mediante convenciones de navegación. Veremos cómo funciona esto a medida que vayamos definiendo nuestras clases.
Para esta teoría vamos a hacer un modelado simple, con Entity Framework nuestras clases no son obligadas a extender de una clase del framework o tener algo especial.
En nuestro ejemplo vamos a definir clases que modelen la lógica de un blog.
using System.Collections.Generic;
using Microsoft.EntityFrameworkCore;
namespace EFGetStarted
{
public class BloggingContext : DbContext {
public DbSet<Blog> Blogs { get; set; }
public DbSet<Post> Posts { get; set; }
// The following configures EF to create a Sqlite database file as `C:\blogging.db`.
// For Mac or Linux, change this to `/tmp/blogging.db` or any other absolute path.
protected override void OnConfiguring(DbContextOptionsBuilder options)
=> options.UseSqlite(@"Data Source=C:\blogging.db");
}
public class Blog
{
public int BlogId { get; set; }
public string Url { get; set; }
public List<Post> Posts { get; } = new List<Post>();
}
public class Post
{
public int PostId { get; set; }
public string Title { get; set; }
public string Content { get; set; }
public int BlogId { get; set; }
public Blog Blog { get; set; }
}
}
Los siguientes pasos utilizan migraciones para crear una base de datos.
> dotnet ef migrations add InitialCreate
> dotnet ef database update
El comando de migraciones crea una migración para crear el conjunto inicial de tablas para el modelo. El comando de actualización de la base de datos crea la base de datos y le aplica la nueva migración.
Veamos un ejemplo de creación, lectura, update y delete:
using System;
using System.Linq;
namespace EFGetStarted
{
internal class Program
{
private static void Main()
{
using (var db = new BloggingContext())
{
// Note: This sample requires the database to be created before running.
// Create
Console.WriteLine("Inserting a new blog");
db.Add(new Blog { Url = "http://blogs.msdn.com/adonet" });
db.SaveChanges();
// Read
Console.WriteLine("Querying for a blog");
var blog = db.Blogs
.OrderBy(b => b.BlogId)
.First();
// Update
Console.WriteLine("Updating the blog and adding a post");
blog.Url = "https://devblogs.microsoft.com/dotnet";
blog.Posts.Add(
new Post { Title = "Hello World", Content = "I wrote an app using EF Core!" });
db.SaveChanges();
// Delete
Console.WriteLine("Delete the blog");
db.Remove(blog);
db.SaveChanges();
}
}
}
}
Dejo link: https://docs.microsoft.com/en-us/ef/core/get-started/overview/first-app?tabs=netcore-cli
Comenzando con una nueva aplicación de consola, necesitaremos instalar los siguientes paquetes, asegurándonos de que todas las versiones sean 5.0.0:
Para instalar dotnet-ef debemos hacer :
> dotnet new tool-manifest
> dotnet tool install dotnet-ef
> dotnet add package Microsoft.EntityFrameworkCore --version 5.0.6
>dotnet add package Microsoft.EntityFrameworkCore.Design --version 5.0.6
>dotnet add package Microsoft.EntityFrameworkCore.Sqlite --version 5.0.6
En este caso estamos utilizando Sqlite, pero podemos utilizar:
Cuando terminemos de configurar nuestro proyecto, podemos ejecutar el comando dotnet-ef, donde el unicornio EF nos saludará.
> dotnet ef
Dejo link: https://docs.microsoft.com/en-us/ef/core/get-started/overview/first-app?tabs=netcore-cli
Quiero compartir este libro gratuito de manning sobre Geoprocessing with Python.
Entity Framework ha recorrido un largo camino desde su inicio original. Concebida inicialmente como una herramienta centrada en el diseñador que depende en gran medida de la interfaz gráfica de usuario de Visual Studio y SQL Server, la filosofía actual de EF reconoce la necesidad de ser más amigable con ideas como control de fuente distribuido, servidores de compilación, múltiples motores de base de datos y sistemas operativos.
Entity Framework (EF) Core es una versión ligera, extensible, de código abierto y multiplataforma de la popular tecnología de acceso a datos de Entity Framework.
EF Core puede servir como un mapeador relacional de objetos (ORM), que:
Si bien EF Core es bueno para abstraer muchos detalles de programación, existen algunas mejores prácticas aplicables a cualquier ORM que ayudan a evitar errores comunes en las aplicaciones de producción:
Dejo link: https://docs.microsoft.com/en-us/ef/core/
Me llego este mail de un libro gratuito y lo comparto:
This practical report describes Microsoft Azure’s load balancing options and explains how NGINX can contribute to a comprehensive solution. Derek DeJonghe & Arlan Nugara take you through the steps necessary to design a solution for your application infrastructure in Microsoft Azure. In this eBook you will learn:
|
|
|
La gente de Google Cloud me envio el siguiente email y se los quiero compartir :
|