我正在尝试在 VS 2012 (.NET 4.5) 下创建 C# 应用程序,并使用由 EntityFramework 6.0 管理的 SqLite (也试用了 5.0)。
我的步骤如下:
从http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki安装 sqlite-netFx45-setup-bundle-x86-2012-1.0.85.0.exe
它为 VS2012 安装组件
创建 C# 项目
使用 NuGet:Install-Package EntityFramework -Pre(它安装 EF 6.0)
使用一张表创建简单的 Sqlite DB,DDL 如下:
CREATE TABLE MyTable ( Id INT PRIMARY KEY, Name1 TEXT, Name2 VARCHAR, Blob1 BLOB, Date1 DATE, Date2 DATETIME );
向项目添加新项目:ADO.NET 实体数据模型:
上面提到的数据库文件已经被选中,连接字符串保存在配置文件中
表格在向导对话框中可见,因此我正在检查它并单击“完成”按钮。
现在应该生成代码,但我有以下消息:
目标 .NET Framework 版本当前不支持数据类型“longchar”;表 'main.MyTable' 中的列 'Name1' 被排除在外
目标 .NET Framework 版本当前不支持数据类型“二进制”;表 'main.MyTable' 中的列 'Blob1' 被排除在外。
目标 .NET Framework 版本当前不支持数据类型“日期”;表 'main.MyTable' 中的列 'Date1' 被排除在外。
目标 .NET Framework 版本当前不支持数据类型“日期”;表 'main.MyTable' 中的列 'Date2' 被排除在外。
我对此感到非常惊讶,因为我已经在使用 EF + Sqlite 但与其他提供程序(旧版 1.0.66.0)一起使用,并且类型映射没有问题。
您是否在提到的 Sqlite 版本中遇到过类似的问题?你知道这些问题的一些解决方案吗?
此致。