【发布时间】:2014-03-09 23:03:15
【问题描述】:
我刚刚开始在我的一个项目中使用 PetaPoco/NPoco,但不得不说它很震撼,但该库似乎无法生成 DDL 并基于 Poco 创建表。我知道 OrmLite 可以做到这一点。
是否有一种方法/解决方法可用于例如装饰 poco,然后根据属性生成 DBMS 特定的表脚本?例如Oracle、MSSql 等
谢谢
【问题讨论】:
我刚刚开始在我的一个项目中使用 PetaPoco/NPoco,但不得不说它很震撼,但该库似乎无法生成 DDL 并基于 Poco 创建表。我知道 OrmLite 可以做到这一点。
是否有一种方法/解决方法可用于例如装饰 poco,然后根据属性生成 DBMS 特定的表脚本?例如Oracle、MSSql 等
谢谢
【问题讨论】:
没有。 PetaPoco 似乎(正确地)致力于保持小巧轻便,专注于一件事(对象与 IDb* 概念之间的映射)并做好这件事。
我可以看到此功能在运行单元测试时是半有用的,或者对于原型设计非常有用,但 IMO 您希望数据库迁移管理器随着时间的推移处理对您的数据库架构的更新。 Fluent Migrator 是个不错的选择。
对我来说,这是关于我们所处的位置(当前的 PetaPoco / NPoco 类)和我们如何到达这里(迁移)的分离。
【讨论】:
不确定您到底想要什么,但我们使用 NPoco.T4 从 DB 生成我们的模型。也许调查一下。你可以在 Nuget 上找到它。
【讨论】: