我在托管(godaddy)中等信任asp.net应用程序中需要大文件上传支持 显然需要对进度的指示做出响应,因此自己处理流非常重要。
这一切看起来都非常简单,并且在完全信任时效果很好:
1.编写一个侦听文件上传的HttpModule
2.使用反射从Context获取HttpWorkerRequest对象
3.写出流到FileStream
一切都很好,除了我在尝试从中等信任的上下文中获取HttpWorkerRequest对象时不断获得权限异常。无论我使用反射还是使用System.IServiceProvider.GetService()来获取对象(显然使用反射),我都会得到相同的错误。
我也尝试过使用System.Web.HttpPostedFile。它有一个属性InputStream。但似乎这个对象是在初始化时上传整个文件,所以没有好处。
我已经google了自己累了,找不到另一种选择。
即使让用户拥有HttpWorkerRequest对象存在安全风险,当Method =“POST”和enctype =“multipart / form-data”
时,框架肯定会提供另一种处理文件流的方法。任何想法都会很棒 感谢
答案 0 :(得分:0)
您也可以尝试阅读context.Request.InputStream
。