EF6 代码迁移 - 数据操作以将列 'filePath' 更新为 varbinary

EF6 Code Migration - Data manipulation in order to update a column 'filePath' to varbinary

我对数据模型做了一些更改,我需要更新一个实体 'File'。以前,此实体只有对绝对路径的引用。

我的目的是通过文件的路径获取文件并将其流式传输到 varbinary 列。

是否 reliable/advisable 进行此操作 together/during 相应 Entity Framework 的代码迁移? 这种迁移将对涉及多个开发人员的项目造成影响。 我试图弄清楚什么是实现此迁移的最自动化的方法。

这些类型的迁移有 guidelines/approaches 吗?

我会暂时创建 fileData (varbinary) 并保留 filePath (varchar)。这种变化可以通过迁移来完成。然后我会在一个单独的作业中将数据从文件传输到字节数组,通过控制台应用程序或类似的东西,与其他开发人员同步这个动作。

使用此设置,您还可以 select 延迟传输文件,例如当请求文件时,您从文件中加载它并将其保存在 varbinary 中。

然后,在以后的迁移中,当您确认所有数据都已传输后,您可以删除 filePath 列。

我总是喜欢在迁移的 Up() 方法中做这种工作。

请记住,所有 .NET 功能都触手可及。这样,无论您在哪里应用迁移,数据库都会得到更新。

由于你的文件路径是绝对路径,所以在应用程序运行的系统中找到它们是没有问题的。