Supporto del provider per i tipi spaziali
Entity Framework supporta l'uso di dati spaziali tramite le classi DbGeography o DbGeometry. Queste classi si basano sulle funzionalità specifiche del database offerte dal provider Entity Framework. Non tutti i provider supportano dati spaziali e quelli che possono avere prerequisiti aggiuntivi, ad esempio l'installazione di assembly di tipo spaziale. Di seguito sono riportate altre informazioni sul supporto del provider per i tipi spaziali.
Altre informazioni su come usare i tipi spaziali in un'applicazione sono disponibili in due procedure dettagliate, una per Code First, l'altra per Database First o Modello First:
Versioni di Entity Framework che supportano i tipi spaziali
Il supporto per i tipi spaziali è stato introdotto in EF5. Tuttavia, nei tipi spaziali di EF5 sono supportati solo quando l'applicazione è destinata e viene eseguita in .NET 4.5.
A partire da EF6 i tipi spaziali sono supportati per le applicazioni destinate sia a .NET 4 che a .NET 4.5.
Provider EF che supportano tipi spaziali
EF5
I provider di Entity Framework per EF5 che sono a conoscenza del supporto dei tipi spaziali sono:
- Provider Microsoft SQL Server
- Questo provider viene fornito come parte di EF5.
- Questo provider dipende da alcune librerie di basso livello aggiuntive che potrebbero essere necessarie per l'installazione, vedere di seguito per informazioni dettagliate.
- Punto Devart Connessione per Oracle
- Si tratta di un provider di terze parti di Devart.
Se si conosce un provider EF5 che supporta i tipi spaziali, contattare e si sarà lieti di aggiungerlo a questo elenco.
EF6
I provider di Entity Framework per EF6 a cui si è a conoscenza che supportano i tipi spaziali sono:
- Provider Microsoft SQL Server
- Questo provider viene fornito come parte di EF6.
- Questo provider dipende da alcune librerie di basso livello aggiuntive che potrebbero essere necessarie per l'installazione, vedere di seguito per informazioni dettagliate.
- Punto Devart Connessione per Oracle
- Si tratta di un provider di terze parti di Devart.
Se si conosce un provider EF6 che supporta i tipi spaziali, contattare e si sarà lieti di aggiungerlo a questo elenco.
Prerequisiti per i tipi spaziali con Microsoft SQL Server
Il supporto spaziale di SQL Server dipende dai tipi sqlGeography e SqlGeometry specifici di SQL Server di basso livello. Questi tipi si trovano nell'assembly Microsoft.SqlServer.Types.dll e questo assembly non viene fornito come parte di EF o come parte di .NET Framework.
Quando Visual Studio viene installato, viene spesso installata anche una versione di SQL Server e verrà inclusa l'installazione di Microsoft.SqlServer.Types.dll.
Se SQL Server non è installato nel computer in cui si desidera usare tipi spaziali o se i tipi spaziali sono stati esclusi dall'installazione di SQL Server, sarà necessario installarli manualmente. I tipi possono essere installati usando SQLSysClrTypes.msi
, che fa parte di Microsoft SQL Server Feature Pack. I tipi spaziali sono specifici della versione di SQL Server, quindi è consigliabile cercare "SQL Server Feature Pack" nell'Area download Microsoft, quindi selezionare e scaricare l'opzione corrispondente alla versione di SQL Server che verrà usata.