F# 类型提供程序的类型定义通常需要一个常量表达式,例如对于 SQL 类型提供程序:
type dbSchema = SqlDataConnection<"Data Source=MySqlServer;Initial Catalog=MyDatabase;">
但是,当将代码提交到 SCM 并进一步让构建服务器执行其操作时,您可能不想使用相同的连接字符串,而是使用从构建过程生成的 SQL 服务器数据库的连接字符串。
这个问题有解决方案吗?
能够完成这项工作真是太好了,因为它将提供对数据库访问代码的编译时检查。
更新 @tomaspetricek 提出的解决方案效果很好,但我不得不在连接字符串中添加一个提供者名称:
<add name="DbConnectionString" providerName="System.Data.SqlClient" connectionString="Data Source=MySqlServer;Initial Catalog=MyDatabase;"/>