简而言之,我试图将一个控制器中收到的IEnumerable<HttpPostedFileBase>
个对象从视图发布到“REST”服务器上的另一个控制器。我曾尝试使用HttpWebRequest
和StreamWriter
将对象作为序列化JSON发送,但由于文件是大图像,因此Max JSON Length会阻止这种情况。
我目前正在尝试使用“multipart / form-data”来发布数据,遵循我在http://www.techcoil.com/blog/uploading-large-http-multipart-request-with-system-net-httpwebrequest-in-c/找到的示例,但这看起来并不那么优雅(对示例的作者没有冒犯)。有没有更好的方式发布数据?
答案 0 :(得分:0)
您无法通过ajax发布文件,也不应尝试将其发布为JSON。使用JSON可能看起来很优雅,但是效率要低得多,因为任何二进制数据都必须是base64编码的。
您必须作为链接到的文章执行常规HTTP帖子。
但是,如果您的所有用户都拥有支持HTML5的浏览器,则可以执行ajax上传:How can I upload files asynchronously?
如果没有,您必须使用某种Flash上传组件或使用IFRAME:s。