好的......所以我甚至不知道这是否有可能。是否可以在代码首次迁移的初始阶段上传图像文件?例如,在创建初始站点用户或具有纵向图像的管理员用户时,是否可以在初始创建该用户期间上载该图像?
我找不到任何与SO或网络相关的内容甚至可以提出一个可行的解决方案,所以这可能是第一次尝试这样的事情。
答案 0 :(得分:1)
以下是进行远程上传的众多可能方法之一,这是最简单的方法之一:
using (var webClient = new WebClient())
{
webClient.UploadFile("ftp://localhost/samplefile.jpg", "samplefile.jpg");
}
为此,您应该将using System.Net;
添加到迁移文件中。此外,显然您需要处理上传权限和凭据,具体取决于您使用的远程仓库的类型。
修改强>:
使用File对象更加轻松。以下是迁移类的完整代码:
using System;
using System.Data.Entity.Migrations;
using System.IO;
public partial class MigrationWithFileCopy : DbMigration
{
public override void Up()
{
File.Copy("sourceFile.jpg", "destinationFile.jpg");
}
public override void Down()
{
File.Delete("destinationFile.jpg");
}
}