0

この要素、

<asp:FileUpload ID="FileUploadEventosCasal" runat="server" />

時間ごとに1つのファイルをアップロードできます(ボタンクリック)。

ボタンを 1 回クリックするだけで複数のファイルをアップロード (キューイング) する方法を知りたいです。.net 4.5 を使用できません。この例のようなものが欲しいです: http://www.aspdotnet-suresh.com/2012/12/aspnet-upload-multiple-files-using.html動作させるために、次の変更を加えました:

<script src="js/jquery-1.8.2.js"></script>
<script>$(function () {/* jquery.MultiFile.js code pasted here */});</script>

<asp:FileUpload ID="FileUploadEventosCasal" CssClass:"multi" runat="server" />

しかし、この変更は実行するだけです。アップロードしようとすると、うまくいきません。ボタンイベントは次のとおりです。

protected void ButtonInsMultipleUpload_Click(object sender, EventArgs e)
{
    HttpFileCollection fileCollection = Request.Files;
    List<byte[]> imgs = new List<byte[]>();
    for (int i = 0; i < fileCollection.Count; i++)
    {
        HttpPostedFile uploadfile = fileCollection[i];
        imgs.Add(new byte[uploadfile.InputStream.Length]);
        uploadfile.InputStream.Read(imgs[i], 0, imgs[i].Length);
    }
}
4

3 に答える 3

1

私の頭の上から?pluploadのようなものを調べます。

複数のファイルを選択でき、チャンクをサポートしています...はい、ページにコントロールをドロップするだけでなく、もう少し操作が必要になる場合がありますが、より多くのコントロールと滑らかなエクスペリエンスが得られます.

を確認してください。

于 2013-03-15T16:45:13.573 に答える
1

ASP.NET 4.5 では、FileUpload コントロールは複数のファイルのアップロードをサポートしています。

<asp:FileUpload ID="FileUpload1" runat="server" AllowMultiple="true" />
于 2013-03-15T16:49:07.317 に答える
1

エラーが見つかりました。ボタン クリック メソッドで、次の変更を行いました。

HttpFileCollection fileCollection = Request.Files;
List<byte[]> imgs = new List<byte[]>();
for (int i = 0; i < fileCollection.Count; i++)
{
    HttpPostedFile uploadfile = fileCollection[i];
    byte[] imageBytes = new byte[uploadfile.InputStream.Length];
    uploadfile.InputStream.Read(imageBytes, 0, imageBytes.Length);
    if(imageBytes.Length > 0)
       imgs.Add(imageBytes);
}

助けてくれてありがとう!!

于 2013-03-15T17:24:59.547 に答える