4

我在 Win 8 CP 的 VS 11 Beta 中使用新的 F# 类型提供程序,但我无法说服 SqlDataConenction 类型提供程序与 SqlCe 数据库一起使用。编码:

open System
open System.Data
open System.Data.Linq
open System.Data.SqlServerCe
open Microsoft.FSharp.Data.TypeProviders
open Microsoft.FSharp.Linq

type dbSchema = SqlDataConnection<"Data Source=C:\Test\Test.sdf">

数据库存在并且是使用 VS11 对话框 Server Explorer/Data Connections/Add New Connection/Sql Server CE/Create 创建的。无论我尝试什么,我总是会收到以下错误:

类型提供程序“Microsoft.FSharp.Data.TypeProviders.DesignTime.DataProviders”报告错误:读取架构时出错。错误:无法打开“C:\Test\Test.sdf”。未安装提供程序“System.Data.SqlServerCe.3.5”。

到目前为止我已经尝试过:

  • 安装了Sql Server Ce 3.5,但错误依旧。
  • 修改了连接字符串并添加了对项目的匹配引用:
    • “提供者=System.Data.SqlServerCe.3.5;数据源=C:\Test\Test.sdf”
    • “提供者=System.Data.SqlServerCe.4.0;数据源=C:\Test\Test.sdf”
4

1 回答 1

1

我知道这个问题是几年前提出的,但对于未来的参考:

[<Literal>]
let connection_string =@"Data Source=C:\Test\Test.sdf"

type dbSchema = SqlDataConnection<connection_string>
于 2015-03-05T11:53:52.523 回答