实体框架自动生成数据库到SQL Server Compact

时间:2014-04-03 03:19:21

标签: entity-framework sql-server-ce-4

我正在使用VS 2012和实体框架6中的模型第一种方法在SQL Server Compact 4.0中生成数据库。我已经从NuGet安装了Entity Framework包,并在我的引用中添加了EntityFramework.SqlServer.Compact。一旦我构建了我的模型,我就尝试使用"从模型中生成数据库生成数据库..."指令。我可以毫无问题地浏览Generate Database Wizard。

当我在Package Manger Console中运行update-database时,我得到了

  

在程序集中找不到迁移配置类型

修复此错误我使用了Enable-Migrations,这给了我一个新错误

  

不支持从使用Database First或Model First创建的DbContext创建DbModelBuilder或编写EDMX。 EDMX只能从不使用现有DbCompiledModel创建的Code First DbContext中获取。

生成的连接字符串位于

之下
<connectionStrings>
    <add name="Model1Container" 
         connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlServerCe.4.0;provider connection string=&quot;data source=C:\Users\RSargent\Desktop\CompactDatabase\MyDatabase1.sdf&quot;"
         providerName="System.Data.EntityClient" />
</connectionStrings>

我尝试使用|DataDirectory|作为连接字符串路径,但这并不适合我,因为我得到的只是一些错误:

  

缺少必需的空格

<connectionStrings>
    <add name="Model1Container"
         connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlServerCe.4.0;provider connection string="Data Source=|DataDirectory|\MyDatabase1.sdf""
         providerName="System.Data.EntityClient"/>
</connectionStrings>

从我所做的研究中,通常连接字符串是这些情况下的问题。我是否正确设置了连接字符串?或者有没有人知道我为什么不能自动生成数据库?

0 个答案:

没有答案