Skip to content

mausch/FsSql

Repository files navigation

FsSql provides a functional interface to ADO.NET for F# applications.

Features:

  • Connection management
  • DBNull <-> option type conversion
  • Async calls
  • Transaction computation expression
  • Composable mapping functions

And, of course, everything ADO.NET does, in an idiomatic, functional, way.

For general usage, see:

Configuring logging:


open System
open System.Diagnostics

open FsSql

type MyLogger(name) =
  interface Logging.Logger with
    member x.Log line =
      Debug.WriteLine (sprintf "%A" line)
    member x.Debug fLine =
      Debug.WriteLine (sprintf "%A" (fLine ()))
    member x.Verbose fLine =
      Debug.WriteLine (sprintf "%A" (fLine ()))

Logging.configure (fun () -> DateTime.UtcNow.Ticks)
                  (fun name -> new MyLogger(name))