g#中的gmail样式文件上传

时间:2012-02-23 11:24:10

标签: c# asp.net

我需要在asp.net c#上实现Gmail样式文件上传 用户将点击按钮,文件对话框将打开。 用户选择一个文件,然后在代码中处理该文件。 我不希望用户看到文件上传控件他只需单击一个按钮。 我已经使用了很少的解决方案     例     

 function OpenFileUpload() {

        var myFrame = document.getElementById('frameUpload');
        $(myFrame).focus();
        $(myFrame).contents().find("#FileUpload1").click();

        var value = $(myFrame).contents().find("#FileUpload1").val();
        if (value != '') {
            $(myFrame).contents().find("#btnSubmit").click();

        }


    }

需要更好的解决方案。

2 个答案:

答案 0 :(得分:3)

我不确定你是在谈论服务器还是客户端......

使用大文件上传文件是一个有趣的话题,它本身就是=)...特别是大文件......

在这里找到好文章: http://www.hanselman.com/blog/ABackToBasicsCaseStudyImplementingHTTPFileUploadWithASPNETMVCIncludingTestsAndMocks.aspx

http://weblogs.asp.net/jgalloway/archive/2008/01/08/large-file-uploads-in-asp-net.aspx http://msdn.microsoft.com/en-us/library/aa479405.aspx

但为什么不使用方便的工具......

这是很好的组成部分:... http://www.plupload.com/

HTH

答案 1 :(得分:1)

您可以尝试swfupload http://swfupload.org/

之类的内容

与Gmail相似,它支持通过点击链接/按钮打开文件对话框,它支持MULTIPLE文件选择,也可以显示上传文件的进度条。

大多数SWFUpload文档在服务器端使用PHP。以下是ASP.NET(SWFUpload ASP.Net example site not working?)的一个示例。

请注意,为了支持从单个窗口上传多个文件,这需要使用Flash,无法使用标准输入文件。