我有一条路径(存储为字符串) - 例如\\documents\doc1.txt
。我试图用字符串路径表示的文件初始化HttpPostedFileBase类型的变量。我该怎么办?
我看过像
Model.File[count] = File.Open(item.PictureDirectory, FileMode.Open);
但这些返回System.io.filestream对象。
FileStream file = File.OpenRead(filepath);
但是如何将其转换为httppostedfilebase?
我正在尝试完成发布here
的内容答案 0 :(得分:0)
首先,正如在另一个问题链接中那样,有一个方法需要HttpPostedFileBase
作为输入,然后要求你发送一个文件而不是自动转移为{{ 1}},建议您需要重构该方法。在Pommy的例子中,或许HttpPostedFileBase
的输入更合适?
现在,如果你绝对必须拥有Stream
的实例,那么这就是你要反对的内容。 The class is abstract,所以你永远不会直接构建它。相反,您需要构建一个继承类。在标准库中,HttpPostedFileBase
继承,并将HttpPostedFileWrapper
作为constructor input。
但是这就是问题,HttpPostedFile
的构造函数是内部的,所以在System.Web库之外,你不是直接构造一个实例。
您的选择是:
HttpPostedFile
的继承类。这应该很简单,它只是一个小类,根据你使用它的代码,你甚至可能不需要实现所有方法。HttpPostedFileBase
,并改为使用HttpPostedFileBase
代替。