La versione 2.2 di Entity Framework Core introduce il supporto nativo ai tipi spatial. Questo supporto è offerto utilizzando i tipi della libreria NetTopologySuite e dei provider di Entity Framework che mappano i tipi verso i diversi tipi esposti dai database. Su NuGet sono già presenti provider Sql Server, SQLite e PostgreSql, ma ne arriveranno anche per altri database.
Il primo passo per utilizzare i tipi spatial è creare una entity che contiene una proprietà il cui tipo è un tipo spatial così come nel prossimo esempio.
using NetTopologySuite.Geometries;
namespace Application1
{
public class Person
{
public string Id { get; set; }
public Point Location { get; set; }
}
}Il tipo Point non è del .NET Framework ma di NetTopologySuite. Una volta creata l'entity possiamo inserire oggetti nel database come facciamo per qualunque altro oggetto.
using (var context = new MyDbContext())
{
var p = new Person { Location = new Point(-113.32456, 50.13234) { SRID = 4326 } }
context.Add(p);
context.SaveChanges();
}Possiamo poi utilizzare LINQ per eseguire query.
var people = context.People.OrderByDescending(p => p.Location.Distance(someLocation)).ToList();
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Centralizzare e governare MCP server e Skill con Azure API Center
Integrare LLM alle nostre applicazioni in .NET con MCP
Welcome to Future Dev Day 2026
Validazione personalizzata nelle Minimal API di ASP.NET Core
Usare i generics di C# con la clausola nameof in modo semplificato
Personalizzare le pagine di errore su Azure App Service
Pubblicare un MCP Server in GitHub MCP Registry
Gestire trasferimenti cloud con Azure Storage Mover
Blue/Green Release in locale con .NET Aspire
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Utilizzo delle stepped value functions nel CSS
Utilizzare i command service nei test con .NET Aspire


