-
Notifications
You must be signed in to change notification settings - Fork 1
Configuration
Jacek Hełka edited this page Dec 7, 2023
·
5 revisions
To make DbFun work we need:
- paremeterless function creating a database connection
- object providing code generation functions
- function executing queries
The minimal configuration could look like this:
module DB =
let createConnection () = new SqlConnection(connectionString)
let query = QueryBuilder(createConnection)
let run f = DbCall.Run(createConnection, f)The query builder object is stateless and can be safely stored as a variable in module.
We will often need some additional configuration, like custom type conversions etc. In this case, some query configuration object is needed:
module DB =
let createConnection () = new SqlConnection(connectionString)
let defaultConfig = QueryConfig.Default(createConnection)
let actualConfig = <some-code-changing-default-config>
let query = QueryBuilder(actualConfig)
let run f = DbCall.Run(createConnection, f)