针对现有数据库验证EF Code第一模型

Jos*_*osh 12 ef-code-first

当数据库不是由EF代码首先创建时,有没有办法检查DbContext是否与数据库匹配?

我正在寻找与Database.CompatibleWithModel类似的功能,但没有元数据.

bri*_*lam 7

EF目前无法做到这一点; 但是,您可以使用DDL脚本作为验证数据库中是否存在所有工件的起点.要获取此脚本,请使用

string ddlScript = ((IObjectContextAdapter)myContext).ObjectContext.CreateDatabaseScript();
Run Code Online (Sandbox Code Playgroud)

某些工具可能能够使用此脚本与数据库进行架构比较.这将告诉您模型是否兼容.