在使用Visual Studio 2013 的ASP.NET项目中,使用Entity Framework 6 Code First,有没有一种方法可以在不每次都经过实体数据模型向导的情况下重建(或更新)生成的DataContext和模型类?我完全知道如何使用EDMX设计器完成此操作,但是由于我正在使用“从数据库Code First”的方法,所以想知道是否有一种一键式(或一个控制台命令)的方式来触发重建,而不必每次更改支撑数据库时都删除生成的上下文类并经过实体数据模型向导。
我有一个无需向导重建的解决方案:
使用T4可以转换所有T4模板并创建类
编码优先要求您手动创建数据上下文。您不会创建/更改数据库和刷新数据上下文类。从数据库的代码优先或EF反向POCO模板是真正的代码优先和数据库优先方法之间一个折中方案。它通过生成与手动编写代码优先中一样的POCO类来在中间满足需求。它们没有采用代码优先的方式,但最终结果类似于代码优先。这就是名称混乱的原因。
如果您正在使用其中一种模板生成POCO,请右键单击t4模板文件并单击“运行自定义工具”。如果无法正常工作,则可能需要删除该实体,然后再次运行自定义工具。此外,右键单击EDMX并单击“从数据库更新模型”也应该有效。
https://visualstudiogallery.msdn.microsoft.com/ee4fcff9-0c4c-4179-afd9-7a2fb90f5838
你可以先对数据库进行所有更改,然后重新生成模型只需保存你的 Database.tt 文件(通常我只是添加空格)。