C# EF6代码迁移-为了将列“filePath”更新为varbinary而进行的数据操作
我对数据模型做了一些更改,需要更新一个实体“文件”。以前,该实体只引用了绝对路径 我的目的是通过路径获取文件,并将其流式传输到varbinary列 在各自实体框架的代码迁移过程中一起/一起执行此操作是否可靠/可取? 这种迁移将发生在一个涉及多个开发人员的项目上。 我试图找出实现这种迁移的最自动化的方法是什么C# EF6代码迁移-为了将列“filePath”更新为varbinary而进行的数据操作,c#,entity-framework,code-migration,C#,Entity Framework,Code Migration,我对数据模型做了一些更改,需要更新一个实体“文件”。以前,该实体只引用了绝对路径 我的目的是通过路径获取文件,并将其流式传输到varbinary列 在各自实体框架的代码迁移过程中一起/一起执行此操作是否可靠/可取? 这种迁移将发生在一个涉及多个开发人员的项目上。 我试图找出实现这种迁移的最自动化的方法是什么 对于这类迁移有什么指导方针/方法吗?我将创建fileData varbinary并暂时保留filePath varchar。这种变化可以通过迁移来完成。然后,我将在一个单独的作业中,通过控制
对于这类迁移有什么指导方针/方法吗?我将创建fileData varbinary并暂时保留filePath varchar。这种变化可以通过迁移来完成。然后,我将在一个单独的作业中,通过控制台应用程序或类似的东西,将数据从文件传输到字节数组,并与其他开发人员同步此操作 使用此设置,您还可以选择延迟传输文件,例如,当请求文件时,您可以从该文件加载该文件并将其保存在varbinary中
然后,在以后的迁移中,当您验证所有数据都已传输时,您可以删除filePath列。我总是喜欢使用迁移的Up方法来完成此类工作 请记住,您拥有所有的.NET功能。这样,无论您在哪里应用迁移,数据库都会得到更新
由于您的文件路径是绝对路径,因此在应用程序运行的系统中查找它们没有问题。哇,听起来很酷,但为什么?我只是好奇:@Heberda有些文件我们不能静态提供。我们使用sql filestream存储它们,并使用文件控制器将它们提供给用户。有趣的是,感谢您的回复:祝您好运,这个解决方案比我的水平高了一点hahaThat听起来很合理,但我更愿意将过程自动化一点。似乎是一条路要走,我只需等几天将其标记为已回答,如果有其他人参加。