是否有可能转换HttpPostedFileBase to HttpPostedFile
,我尝试搜索SO问题,我只能找到相反的情况HttpPostedFile
到HttpPostedFileBase
......
试过阅读: http://www.prideparrot.com/blog/archive/2012/8/uploading_and_returning_files
他声明“在某些情况下,我们需要将HttpPostedFileBase
转换为HttpPostedFile
,我们可以使用HttpPostedFileWrapper
来实现这一目标。”那么我该怎么办呢?
请不要告诉我使用HttpPostedFileBase
,因为我使用的是DevExpress框架UploadedFile
类,它只在其构造函数中接受HttpPostedFile
。
我尝试这样做,但不知道我应该写什么HttpPostedFile
HttpFileCollectionBase files = Request.Files;
for (int i = 0; i < files.Count; i++)
{
var file = files.Get(i);
}
提前感谢您的时间和帮助。
答案 0 :(得分:2)
我的问题的解决方案如下:
List<UploadedFile> uploadedFiles = new List<UploadedFile>();
var files = Request.Files;
for (int i = 0; i < files.Count; i++)
{
var file = files.Get(i);
var constructorInfo = typeof(HttpPostedFile).GetConstructors(BindingFlags.NonPublic | BindingFlags.Instance)[0];
var obj = (HttpPostedFile)constructorInfo
.Invoke(new object[] { file.FileName, file.ContentType, file.InputStream });
uploadedFiles.Add(new UploadedFile(obj));
}
答案 1 :(得分:1)
此帖似乎可以满足您的需求。你必须得到HttpPostedFileBase
内的字节数组,但它应该可以解决这个问题: