将本地文件传递给HttpPostedFileBase

时间:2012-12-19 18:32:19

标签: c# asp.net asp.net-mvc asp.net-mvc-3

我有一个将HttpPostedFileBase作为参数的方法,但我不确定如何将本地文件指定为HttpPostedFileBase。

   string httpPostedFileBase = @"C:\SVN - Apps\trunk\files\230.flv";

    var uploadedFile= FileAndMediaService.UploadFile(httpPostedFileBase, fileInfo);

2 个答案:

答案 0 :(得分:2)

如果文件已经存在于运行MVC的计算机的硬盘驱动器上(通过IIS或IIS Express),则它不会通过HTTP进行POST。 HttpPostedFileBase是用于转换从HTTP POST获取的文件上载的对象。

如果要使用服务器上已有的文件,请查看System.IO命名空间中的类。

答案 1 :(得分:0)

我从未尝试过,但根据this post的答案,您可以创建一个将被接受的派生类来代替HttpPostedFileBase。由于磁盘上有文件且问题涉及字节数组,因此您必须将文件读入字节数组(使用System.IO命名空间中的类)或进行其他修改。

另一种选择只是编写一个小的MVC页面(因为你用MVC标记了这个条目我假设你正在做的事情)并且只是上传文件然后从那里开始。但是,如果要上载多个文件,则可能需要使用派生类路由。