我(仍然)试图遵循一个在线视频教程,介绍如何使用实体框架与代码优先的方法.就我的EDM验证是否正确,现在是实际构建数据库的时候了.教师使用sql Server,显然当第一个查询命令(ToList())针对DbContext对象时自动创建数据库.
由于我计划在将来的应用程序中使用基于sql Server Compact文件的数据库,所以我尝试使用sql Server Compact 4.0重现教程的示例.我安装了NuGet软件包“EntityFramework.sqlServerCompact”和“Micrososft sql Server Compact Edition”.显然这会导致在app.config中提供一个新的提供者条目:
<providers> <provider invariantName="System.Data.sqlServerCe.4.0" type="System.Data.Entity.sqlServerCompact.sqlCeProviderServices,EntityFramework.sqlServerCompact" /> </providers>
Migrations is enabled for context ‘DataModelContext’ but the database does not exist or contains no mapped tables. Use Migrations to create the database and its tables,for example by running the ‘Update-Database’ command from the Package Manager Console.
当我运行更新数据库我收到消息:
No pending explicit migrations.
Applying automatic migration: 201310311356014_AutomaticMigration.
Running Seed method.