fsprojects / fsprojects/FSharp.Data.SqlClient

Generated types SqlCommand type provider. Records only.

Open
#162 1 comment 1 reaction 1 assignee View on GitHub

@ntr is already working on this.

Since Sep 21, 2015.

breaking change
Dominant language
F#
Stars
206
Forks
66
PR merge metrics
No merged PRs in 30d

Description

With introduction of Execute method SqlClient (former SqlProgrammability) type provider covers a lot of same uses cases as SqlCommand type provider. It will create confusion among users and lead to code duplication in the implementation.
I would like to use major version V2 with breaking changes (see issues #159 and #161) as an opportunity to optimize SqlClient and SqlCommand type providers for different scenarios.
By making SqlCommand type provider "generated types" kind we can address following:

  • Interop with C#.
  • I believe issue #123 will be also fixed

Restricting item type to Records makes implementation simpler and provides better performance at design time. Additional types (Tuples, DataTable and DataReader) will be supported by Executeon SqlClient type provider (former SqlProgrammability)

SqlCommand type provider lands itself as good candidate for generated types because of very small type surface (only 2: command + record). Presence of TVP might cause extra type generation but it won't impact performance or implementation complexity much .

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.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.