F#SqlDataConnection TypeProvider不使用Sql Server Ce

时间:2012-03-09 20:45:21

标签: f# sql-server-ce type-providers

我在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.sdf'。提供者'System.Data.SqlServerCe.3.5'没有   安装。

到目前为止我尝试过:

  • 安装了Sql Server Ce 3.5,但错误仍然相同。
  • 修改了连接字符串&amp;添加了对项目的匹配引用:
    • “Provider = System.Data.SqlServerCe.3.5; Data Source = C:\ Test \ Test.sdf”
    • “Provider = System.Data.SqlServerCe.4.0; Data Source = C:\ Test \ Test.sdf”

1 个答案:

答案 0 :(得分:1)

我知道这个问题是在几年前被问到的,但是对于将来的参考:

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

type dbSchema = SqlDataConnection<connection_string>