有没有办法从App.Config文件中为F#中的Linq-To-Sql数据提供程序提供连接字符串。
我尝试过以下测试:
let mutable connString = @"Data Source=PCSQLEXPRESS;Initial Catalog=NortwindDB;Integrated Security=True"
type SqlConnection = SqlDataConnection<ConnectionString = connString>
但是我收到错误消息“这不是常量表达式或有效的自定义属性值”
由于
答案 0 :(得分:14)
类型提供程序本身需要一个硬编码的连接字符串,用于生成在编译时进行开发的类型(在您的情况下为SqlConnection
),但是,您可以配置在运行时使用的实际连接字符串,如下所示:
type SqlConnection = SqlDataConnection<"Data Source=PCSQLEXPRESS;Initial Catalog=NortwindDB;Integrated Security=True">
let runtimeConnStr = ...
type dataContext = SqlConnection.GetDataContext(runtimeConnStr)
答案 1 :(得分:3)
使用“?ConnectionStringName”参数可以找到你想要的地方。
http://msdn.microsoft.com/en-us/library/hh362320(v=VS.110).aspx
答案 2 :(得分:0)
您可能还想查看以下问题,该问题在答案中有解决方案 F# Type Providers and Continuous Integration