меня есть какая-либо функция сохранения данных в базу, и мне нужно открыть соединение с БД лишь 1 раз перед первым сохранением.
Есть же lazy из коробки let x = lazy (fun _ -> System.DateTime.Now) printf "%O" x.Value
в сферическом вакууме вот так let connectDB = let connection = actualConnect() fun () -> connection в реальной жизни как-то так let connectDB = let mutable connection : Connection = null fun () -> if connection = null then try connection <- actualConnect() Ok connection with e -> Err e.Message else Ok connection
Я по другому делал, т.к. IDbConnection является IDisposeable, я делал функцию getConn, которая создавала этот объект и использовал use, типа use conn = getConn
Обсуждают сегодня