Mappare una complex property di una entity su un campo JSON

di Stefano Mostarda, in LINQ, Entity Framework,

Entity Framework 8 ha introdotto i complex type che sono l'equivalente dei Value Type nel linguaggio DDD. Fino alla versione 9, questi potevano essere gestiti come semplici colonne della tabella, ma, a partire dalla versione 10, possono essere persistiti come unica colonna JSON. Prendiamo come esempio il seguente codice.

public class Person
{
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }

    public Address Address { get; set; }
}

public class Address
{
    public string Street { get; set; }
    public string City { get; set; }
    public string ZipCode { get; set; }
}

La classe Address può essere mappata come colonna JSONcon questo codice nel metodo OnModelCreating.

modelBuilder.Entity<Person>(e =>
{
    e.ComplexProperty(c => c.Address, c => c.ToJson());
});

Commenti

Visualizza/aggiungi commenti

| Condividi su: LinkedIn, Facebook

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi