我有一个将HttpPostedFileBase作为参数的方法,但我不确定如何将本地文件指定为HttpPostedFileBase。
string httpPostedFileBase = @"C:\SVN - Apps\trunk\files\230.flv";
var uploadedFile= FileAndMediaService.UploadFile(httpPostedFileBase, fileInfo);
答案 0 :(得分:2)
如果文件已经存在于运行MVC的计算机的硬盘驱动器上(通过IIS或IIS Express),则它不会通过HTTP进行POST。 HttpPostedFileBase是用于转换从HTTP POST获取的文件上载的对象。
如果要使用服务器上已有的文件,请查看System.IO命名空间中的类。
答案 1 :(得分:0)
我从未尝试过,但根据this post的答案,您可以创建一个将被接受的派生类来代替HttpPostedFileBase
。由于磁盘上有文件且问题涉及字节数组,因此您必须将文件读入字节数组(使用System.IO
命名空间中的类)或进行其他修改。
另一种选择只是编写一个小的MVC页面(因为你用MVC标记了这个条目我假设你正在做的事情)并且只是上传文件然后从那里开始。但是,如果要上载多个文件,则可能需要使用派生类路由。