gpt4 book ai didi

nhibernate - 当数据库发生更改时,您如何管理ORM层?

转载 作者:行者123 更新时间:2023-12-02 04:19:22 24 4
gpt4 key购买 nike

我了解不自动刷新.dbml(Linq2Sql)、. edmx(Linq2Entities)或.hbm.xml(NHibernate)的原因。在每个ORM解决方案中,如果数据库中有更改,则需要更新这些文件。 如果您100%确信不会破坏任何内容,是否可以自动刷新这些文件?

我对RoR的迁移相当熟悉。 .NET世界中是否有一个dependabale迁移工具?

通常,您如何保持数据库设计的敏捷性,并且不一次又一次地手动重新创建这些映射文件?

如果此问题重复,请提供链接。我找不到一个。

最佳答案

我不确定您对更新EDMX的犹豫。只需继续从数据库中更新模型即可。很有可能会起作用。但是,如果没有,只需从源代码管理中获取旧版本,然后手动进行更改。

另一方面,使用LINQ to SQL很难,因为没有更新功能。您必须手动从模型中删除更改的对象,重新添加它们,然后重新应用所做的任何更改。同样,源代码控制在这里至关重要。您需要将XML文件与以前的版本进行比较,以确保您不会忘记任何内容。

我不确定您有关迁移的问题意味着什么。是的,有一个工具(RikMigrations),其功能与Rails中的迁移类似。但是,迁移当然会更改数据库元数据。他们不会更改您的ORM映射。在Rails和.NET中都可以在其他地方完成。

关于nhibernate - 当数据库发生更改时,您如何管理ORM层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/516936/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com