gpt4 book ai didi

ef-code-first - EF 4.3 Code First Migrations __MigrationHistory 表中存储的压缩模型是如何创建的?

转载 作者:行者123 更新时间:2023-12-04 17:54:33 24 4
gpt4 key购买 nike

我正在使用 Code First Migrations( Entity Framework 4.3),我想获得当前模型的压缩二进制版本,以便我可以手动将其与 __MigrationHistory 中存储的最新模型进行比较。表(或我存储在文本文件中的表)。

EdmMetadata.TryGetModelHash()方法,但这被标记为已弃用,如果可能,我想避免使用它(出于面向 future 的原因)。

我将如何在 EF 4.3 下执行此操作?

编辑:来自更多调查和 Pawel's answer 中的信息我发现这个字段不再存储散列而是模型的压缩二进制表示。这就是我正在尝试创建的。

最佳答案

__MigrationHistory表不再包含模型的散列。相反,它现在包含压缩形式的模型。此外,验证模型是否已更改不再仅依赖于比较哈希值,因为迁移需要“知道”发生了什么变化以及它是如何发生变化的。
EdmMetadata是在 4.3/5.0 中将迁移集成到 Entity Framework 之前使用的表,不会在 EF 4.3+ 创建的数据库中创建。您也可以在此处找到一些其他详细信息:http://blog.oneunicorn.com/2012/01/13/ef-4-3-beta-1-what-happened-to-that-edmmetadata-table/

关于ef-code-first - EF 4.3 Code First Migrations __MigrationHistory 表中存储的压缩模型是如何创建的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10683726/

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