我可以直接针对SQL数据库项目使用EF Reverse POCO生成器吗?
我将SQL数据库定义保存在" Visual Studio SQL数据库项目"中,这为我提供了一些不错的版本控制功能,架构比较和一些漂亮的部署功能。有时我在开发期间从临时数据库更新项目文件,但版本控制的项目始终是"事实"对于任何版本。
如果我使用EntityFramework Reverse POCO Code First Generator,我是否需要往返我的"真相"通过实际的SQL数据库生成POCO?或者我可以针对VS数据库项目使用POCO生成器吗?
我知道数据库项目的模式在各种VS数据库交互中都有一种元存在。例如,它在SQL Server对象资源管理器中显示真实的数据库图标。但我不知道代码优先生成器是否/确实利用类似的能力来查询元数据。
答案 0 :(得分:1)
GitHub上有一个名为SqlSharpener的项目可用作NuGet包。
说明
解析SQL文件以创建可以使用的元对象层次结构 生成C#代码,例如存储过程包装器或实体框架 代码优先实体。手动生成或通过调用其中一个生成 包含预先编译的T4模板。
而不是从数据库生成代码或使用繁重的代码 抽象层可能会错过数据库之间的差异 数据访问层直到运行时,这个项目旨在提供一个非常 在设计时生成的快速简单的数据访问层 使用SQL文件作为事实来源(例如在SSDT中找到的那些) 项目)。
我无法保证,因为我从未使用它,但似乎很有希望。
答案 1 :(得分:0)
对于EntityFramework Reverse POCO Code First Generator,您需要往返实际的SQL数据库以生成代码优先代码,因为您不能对VS数据库项目使用生成器。