【问题标题】:ASP.Net Stream I/O - via file uploadASP.Net Stream I/O - 通过文件上传
【发布时间】:2012-04-19 11:05:39
【问题描述】:

我有一个带有文件上传要求的 ASP.net 网络表单,最终用户将 Excel 文件(可能是 .csv)上传到网络服务器,然后通过 AJAX 样式回发填充一系列文本框。 (页面使用 Telerik RadAjaxManager / VB asp.net 3.0)

当您从网页上传文件到服务器时,它会在服务器上显示为内存流还是文件流?如何将此流(作为字符串)加载到 ADO 数据表中?

这是我在概念和编码方面遇到一些困难的地方。

  1. 上传的文件是内存流还是我需要将其存储在 服务器上的 Tmp 目录以便我可以读取它?我宁愿 不要创建任何 tmp 文件(除非它们被我的服务器自动处理掉)。

  2. 如何从 Stream in 转到可以用逗号分割的字符串?

【问题讨论】:

  • 该文件将作为 Stream 传入并从内存中读取或保存到磁盘。您不能通过 AJAX 上传文件,但有一些 jQuery 插件可以使用 iframe 上传隐藏的文件,然后让您使用 AJAX。想到github.com/valums/file-uploader

标签: asp.net iis telerik filestream memorystream


【解决方案1】:

telerik 的 RadAsyncUpload - Telerik RadAsyncUploadDemos 我很幸运 - 它适用于 Ajax 调用,因此您不必在上传时禁用 ajax。

它会将文件上传到流中,直到您回发。然后,您可以使用 UploadedFiles 属性访问它们。您可以选择通过 TargetFolder 属性指定文件夹位置,它会在成功上传和回发后将文件复制到该位置。

您可以使用 OnFileUpload 事件来处理上传的文件,然后按照帮助文章 - RadControls for ASP.NET AJAX Documentation - OnFileUploaded 中的说明将其解析出来

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-22
    • 1970-01-01
    • 2012-05-01
    • 2010-12-25
    • 2012-12-25
    • 2021-08-10
    相关资源
    最近更新 更多