Add support for NetTopologySuite

Open
#369 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
fsharp, sql
Domain
database

Research direction

Start by inspecting the existing SqlServer.Types support in FSharp.Data.SqlClient and the type-provider paths that handle SQL Server values. Check how NetTopologySuite is supported by Dapper and Entity Framework Core, then determine the project’s supported extension path for spatial or custom types. Done means NetTopologySuite spatial data can be used with the type provider on dotnetcore without relying on Microsoft.SqlServer.Types.

Written by the indexing model from the issue text.

Description

improvement up-for-grabs
Description

In the past this type provider had support for SqlServer.Types a big part of which are the Spatial Data Types for SQLServer.

Today with the move to dotnetcore Microsoft.SqlServer.Types are no longer supported (only full framework). Dapper and Entityframework core both support NetTopologySuite as a replacement for the Geometry Sql Server Types. This library is much more widely supported and feature complete.

In order once again support Spatial Data Types, and to gain parity with other popular dotnet SQL libraries FSharp.Data.SqlClient should also support Spatial Data Types via NetTopologySuite.

Repro steps

Installing Microsoft.SqlServer.Types shows a warning that the package may not be fully compatible with your project.

Expected behavior

I would expect a path to use Spatial Data Types or support for custom types.

Actual behavior

It is not currently possible to use NetTopologySuite with this type provider.

Known workarounds

Use a different library.

Related information
  • Database: SQL Server 2019
  • Framework: dotnetcore 2.1
Dominant language
F#
Stars
206
Forks
66
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from fsprojects/FSharp.Data.SqlClient

All issues in fsprojects/FSharp.Data.SqlClient

Similar issues

More Databases issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.