目前正在使用的系统。网。用户界面。支持此.文件上传裹在我们自己的控制。

我们有许可证阶段.我想知道,如果任何人有经验,或者可以建议一个更好的?

一些标准来衡量

  • 验证
  • 性能
  • 多个文件
  • 本地化(浏览 是困难的)
  • 安全
有帮助吗?

解决方案

就个人而言,如果你有阶段控制我会给他们枪杀。我发现他们非常有帮助的,并且用户的经验是良好的。他们的上载控制是相当不错的。

其他提示

我刚刚发布关于此 在另外一个问题, 但是如果您使用这种件的控制,你将能够处理的图像速度和效率。该部分将实际调整图像在客户机之前,发送。这减少了不必要的带宽和转让的多个图像在一个时间。

我们扩展的FileUploadControl添加一些验证。我们还写了我们自己的控制,允许多个文件上传的一次。我们目前正在评估这两者。希望我们决定一个,我想有2个不同的上传的控制,以维护。

检查出迪恩Brettle的 NeatUpload.它基本上是一个自定义HttpHandler,流的文件的磁盘装载的额外的配置。这是开放源代码和迪恩是一个绝对的星用于支持他的用户。

检查这一出:

Html-5-上传

拖多个文件的网页上!

链路并不总是工作,所以在这里再次: http://www.igloolab.com/jquery-html5-uploader/

.

控制器:(修改从我原来的码,希望我不会忘了一些东西,但是很清楚)

     <HttpPost()> _
     Public Function Upload(uploadedFile As System.Web.HttpPostedFileBase) As ActionResult
        If uploadedFile IsNot Nothing Then 
            If uploadedFile.ContentLength > 0 Then

               Dim mimeType As String = Nothing 
                'Upload
                Dim PathFileName As String =   System.IO.Path.GetFileName(uploadedFile.FileName)

                 Dim path =  System.IO.Path.Combine(Server.MapPath("~/App_Data/Uploads"), PathFileName)

                If Not System.IO.Directory.Exists(Path) Then
                    System.IO.Directory.CreateDirectory(Path)
                End If

                Dim firstLoop As Boolean = True
                uploadedFile.SaveAs(path)                  
             Next
        End If
        Return Nothing
    End Function

这是(不要忘记的链接css和js;))

     <h1>
            @SharedStrings.Upload</h1>
        <h2>
            @SharedStrings.UploadInformation</h2>
        <div id="dropbox">
        </div>
        <div id="upload">
        </div>
        <script type="text/javascript">

            $(function () {

                var fileTemplate = "<div id=\"{{id}}\">"; fileTemplate += "<div class=\"progressbar\"></div>"; fileTemplate += "<div class=\"preview\"></div>"; fileTemplate += "<div class=\"filename\">{{filename}}</div>"; fileTemplate += "</div>"; function slugify(text) { text = text.replace(/[^-a-zA-Z0-9,&\s]+/ig, ''); text = text.replace(/-/gi, "_"); text = text.replace(/\s/gi, "-"); return text; }
                $("#dropbox").html5Uploader({ onClientLoadStart: function (e, file) {
                    var upload = $("#upload"); if (upload.is(":hidden")) { upload.show(); }
                    upload.append(fileTemplate.replace(/{{id}}/g, slugify(file.name)).replace(/{{filename}}/g, file.name));
                }, onClientLoad: function (e, file) { /*$("#" + slugify(file.name)).find(".preview").append("<img src=\"" + e.target.result + "\" alt=\"\">");*/ }, onServerLoadStart: function (e, file) { $("#" + slugify(file.name)).find(".progressbar").progressbar({ value: 0 }); }, onServerProgress: function (e, file) { if (e.lengthComputable) { var percentComplete = (e.loaded / e.total) * 100; $("#" + slugify(file.name)).find(".progressbar").progressbar({ value: percentComplete }); } }, onServerLoad: function (e, file) { $("#" + slugify(file.name)).find(".progressbar").progressbar({ value: 100 }); } 
                }); 
            });
        </script>

和我的css

 /*html 5 uploader*/
#dropbox 
{
/*picture where people would drag-drop their files to*/
 background-image:url(../Images/UploadToMedia.png);
 height:128px;
 margin-bottom:40px;
 margin-left:auto;
 margin-right:auto;
 background-repeat:no-repeat;
 margin-top:0;
 width:128px;
}

你可以尝试一闪为基础的解决方案,可以显示任何文本,文本框,按钮,或其他任何部分作为自己的文件上传的控制。这些方案通常把1×1闪电影上的页面行为之间的桥梁javascript和闪这样,javascript可以叫闪的文件上传框动态。

在最近的一个项目,我用 FancyUpload 这样做。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top