【发布时间】:2017-03-14 20:06:16
【问题描述】:
我正在使用 FSharp.Data.SqlClient 并尝试将我的 connectionString 从 [<Literal>] 移动到 app.config。
我的 app.config 看起来像这样
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=Test;Integrated Security=True" providerName="System.Data.SqlClient"/>
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2" />
</startup>
</configuration>
而我的SqlCommandProvider 如下图,根据http://fsprojects.github.io/FSharp.Data.SqlClient/configuration%20and%20input.html 应该是正确的
new SqlCommandProvider<"SELECT ...",
ConnectionStringOrName = "name=DefaultConnection",
SingleRow = true,
AllParametersOptional = true>(??????)
现在的问题是。最后一部分的内容,?????? 部分。
我尝试了"name=DefaultConnection",但它给了我一个运行时错误,名称不受支持。
我似乎找不到任何文档来解释那里的内容。
更新
我发现了这个解决方法。 https://fsprojects.github.io/FSharp.Configuration/
如果您无论如何都必须提供连接字符串,我不明白ConnectionStringOrName 的目的。还有为什么你必须指定它两次。对我来说意义不大:(
【问题讨论】:
-
试试
DefaultConnection,不带name= -
@FyodorSoikin 然后我得到了这个错误:
Format of the initialization string does not conform to specification starting at index 0.
标签: f# f#-data fsharp.data.sqlclient