Condividi tramite


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.