我成功地使用
在 F# 中硬编码连接字符串会引起问题,因为我需要部署到多个暂存环境。所以,我想将这两种方法结合起来,使得我的数据库连接字符串可以从 app.config 获取。不幸的是,我的初步尝试失败了。
以下是摘要代码:
FSharp.Data.TypeProviders
访问我的数据库。我还使用FSharp.Configuration
从 app.config 读取值。在 F# 中硬编码连接字符串会引起问题,因为我需要部署到多个暂存环境。所以,我想将这两种方法结合起来,使得我的数据库连接字符串可以从 app.config 获取。不幸的是,我的初步尝试失败了。
以下是摘要代码:
'
open System
open FSharp.Configuration
open FSharp.Data.TypeProviders
type Settings = AppSettings<"app.config">
// in app.config <add name="Target" connectionString="blahblah"/>
let ConnectionString = Settings.ConnectionStrings.Target
type Sql = SqlDataConnection<ConnectionString>
// ...
use db = Sql.GetDataContext()
// query db, etc.
我明白类型提供程序为什么会失败,但我想问是否有人有建议允许我动态提供连接字符串?
澄清一下:我特别想使用FSharp.Data.TypeProviders,因为类型提供程序提供给我的功能。我不想要C#的解决方案。