当数据库不是由EF代码首先创建时,有没有办法检查DbContext是否与数据库匹配?
我正在寻找与Database.CompatibleWithModel类似的功能,但没有元数据.
EF目前无法做到这一点; 但是,您可以使用DDL脚本作为验证数据库中是否存在所有工件的起点.要获取此脚本,请使用
string ddlScript = ((IObjectContextAdapter)myContext).ObjectContext.CreateDatabaseScript();
Run Code Online (Sandbox Code Playgroud)
某些工具可能能够使用此脚本与数据库进行架构比较.这将告诉您模型是否兼容.