Implement multi-file upload in ASP.NET

xiaoxiao2021-03-06  45

Implement multi-file upload in ASP.NET

Source: Unknown Author: Unknown Recommended rating: Visits: 22

In previous web applications, uploading files are a very troublesome thing, now there is .NET, file uploads become gently easy. The following example implements a multi-file upload function. You can dynamically add input forms, and the number of files upload is not limited.

Code is as follows: MultiUpload.aspx <% @ Page Language = "vb" AutoEventWireup = "false" Codebehind = "MultiUpload.aspx.vb" Inherits = "aspxWeb.MultiUpload"%> Multi-file upload </ title> <script language =" javascript "> Function addFile () {var str = '<input type =" file "SIZE = "50" Name = "file"> 'Document.getElementByid (' myfile '). InsertAdjacenthtml ("Beforeend", Str)} </ script> </ head> <body> <form id = "Form1" Method = " POST "runat =" server "enctype =" multipart / form-data "> <center> <ask: label runat =" server "id =" mytitle "> </ asp: label> <p id =" myfile> < INPUT TYPE = "file" size = "50" name = "file"> </ p> <p> <input type = "οnclick =" add) "οnclick =" addFile ()> <asp: Button runat = "server" text = "Upload" ID = "UPLOAD"> </ asp: button> <input οnclick = "this.form.reset ()" type = "button" value = "reset (reset)" > </ P> </ center> <p align = "center"> <asp: label id = "strs" runat = "server" font-name = "true" font-size = " 9pt "width =" 500px "borderStyle =" none "bordercolor = "White"> </ asp: label> </ p> </ form> </ body> </ html> postcode:</p> <p>MultiUpload.aspx.vb Public Class MultiUpload Inherits System.Web.UI.Page Protected WithEvents Upload As System.Web.UI.WebControls.Button Protected WithEvents MyTitle As System.Web.UI.WebControls.Label Protected WithEvents strStatus As System.Web. UI.WebControls.Label #Region "Web Form Designer Generated Code" 'This call is required by the Web Form Designer. <System.Diagnostics.DebuggerStepThrough ()> Private Sub InitializeComponent () End Sub Private Sub Page_Init (ByVal sender As System. Object, ByVal e As System.EventArgs) Handles MyBase.Init 'CODEGEN: This method call is required by the Web Form Designer' Do not modify it using the code editor InitializeComponent () End Sub #End Region Private Sub Page_Load (ByVal sender. As system.object, byval e as system.eventargs) Handles mybase.load myTitle.text = "<h3> multi-file upload </ h3>" UPLOAD.TEXT = "Start Upload" IF (me.ispostback) Then Me.SaveImages () End Sub Private Function SaveImages () AS System.Boolean 'Traversed File Form Element DIM Files As System.Web.httpFileCollection = System.Web.httpContext.current.request.files' Status Information DIM STRMSG As New System.Text.StringBuilder ("Uploaded files are: <hr color = red>") DIM ifile as system.int32 try for ifile = 0 To files.Count - 1 'check the file name extension Dim postedFile As System.Web.HttpPostedFile = files (iFile) Dim fileName, fileExtension As System.String fileName = System.IO.Path.GetFileName (postedFile.FileName) If Not ( FILENAME = String.empty) THEN FILEEXTENSION = System.io.path.Getextension (filename) strmsg.Append ("Uploaded file type:" postedfile.contettype.tostring () "<br>") strmsg.Append (" Client file address: " </p> <p>PostedFile.FileName "<br>") strmsg.append ("Upload file name:" filename "<br>") strmsg.Append ("Upload file extension:" fibension "<br> <hr> ") 'can be saved to different folder postedfile.saveas (System.Web.httpContext.crent.Request.Mappath) end if next strandus.text = strmsg .ToString () Return True Catch Ex As System.Exception strStatus.Text = Ex.Message Return False End Try End Function End Class C # version UpLoad.aspx <% @ Page language = "c #" Codebehind = "UpLoad.aspx.cs" Autoeventwireup = "false" inherits = "Webportal.upload"%> <! Doctype html public "- // w3c // DTD html 4.0 transitional // en"> <html> <head> <title> multi-file upload </ title > <script language = "JavaScript"> function addFile () {var str = '<INPUT type = "file" size = "50" NAME = "File">' document.getElementById ( 'MyFile'). insertAdjacentHTML ( "beforeEnd ", str)} </ script> </ head> <body> <form id =" form1 "method =" post "runat =" server "enctype =" multipart / form-data "> <div align =" center " > <h3> Multi-file upload </ h3> <p id = "myfile> <input type =" file "size =" 50 "name =" file "> </ p > <P> <input type = "οnclick =" addFile () οnclick = "addfile ()> <input οnclick =" this.form.reset () "type =" value = "reset (Reset)> <ask: button runat = "server" text =</p> <p>"Start Upload" ID = "UploadButton"> </ asp: button> </ p> <p> <asp: label id = "strStatus" runat = "server" font-name = "True" font-bold = "TRUE "Font-size =" 9pt "width =" 500px "borderStyle =" none "bordercolor =" white> </ asp: label> </ p> </ div> </ form> </ body> </ html> UpLoad.aspx.cs using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; using System.Web; using System.Web.SessionState; using System.Web.UI; using System. Web.ui.WebControls; Using System.Web.ui.htmlControls; Namespace Webportal {//// <summary> /// Upload summary description.</p> <p>/// multi file upload /// </ summary> public class Upload: System.Web.UI.Page {protected System.Web.UI.WebControls.Button UploadButton; protected System.Web.UI.WebControls.Label strStatus; Private void page_load (object sender, system.eventargs e) {// The user code is placed here to initialize the page if (this.ispostback) this.saveImages ();} private boolean saveimages () {/// 'traversing File form elements HttpFileCollection files = HttpContext.Current.Request.Files; /// 'state information System.Text.StringBuilder strMsg = new System.Text.StringBuilder (); strMsg.Append ( "upload file are: <hr color = Red> "); try {for (int ifile = 0; ifile <files.count; ifile ) {/// 'Check file extension name httppostedfile postedfile = files [ifile]; string filename, fileExtension; filename = system.io. Path.GetFileName; if (fileEname! = ") {FileExtension = system.io.path.Getextension (filename); strmsg.append (" Upload file type: " postedfile.contettype.tostring () "<br>"); strmsg.append ("client file address:" postedfile.filename "<br>"); strmsg.append ("Upload file name:" filename "<br> "); strmsg.appe ND ("Uploaded file extension:" FileExtension "<br> <hr>"); /// 'can be saved to different folders according to the different names of the name /// Note: You may want to modify your file Anonymous write permission on the clip. postedFile.SaveAs (System.Web.HttpContext.Current.Request.MapPath ( "images /") fileName);}} strStatus.Text = strMsg.ToString (); return true;} catch (System.Exception Ex) {strStatus .Text = ex.Message; Return False;}} #Region Web Form Designer Generated Code Override Protected Void OnNit (Eventargs E) {// // Codegen: This call is necessary for the ASP.NET Web Form Designer of.</p></div><div class="text-center mt-3 text-grey"> 转载请注明原文地址:https://www.9cbs.com/read-70430.html</div><div class="plugin d-flex justify-content-center mt-3"></div><hr><div class="row"><div class="col-lg-12 text-muted mt-2"><i class="icon-tags mr-2"></i><span class="badge border border-secondary mr-2"><h2 class="h6 mb-0 small"><a class="text-secondary" href="tag-2.html">9cbs</a></h2></span></div></div></div></div><div class="card card-postlist border-white shadow"><div class="card-body"><div class="card-title"><div class="d-flex justify-content-between"><div><b>New Post</b>(<span class="posts">0</span>) </div><div></div></div></div><ul class="postlist list-unstyled"> </ul></div></div><div class="d-none threadlist"><input type="checkbox" name="modtid" value="70430" checked /></div></div></div></div></div><footer class="text-muted small bg-dark py-4 mt-3" id="footer"><div class="container"><div class="row"><div class="col">CopyRight © 2020 All Rights Reserved </div><div class="col text-right">Processed: <b>0.043</b>, SQL: <b>9</b></div></div></div></footer><script src="./lang/en-us/lang.js?2.2.0"></script><script src="view/js/jquery.min.js?2.2.0"></script><script src="view/js/popper.min.js?2.2.0"></script><script src="view/js/bootstrap.min.js?2.2.0"></script><script src="view/js/xiuno.js?2.2.0"></script><script src="view/js/bootstrap-plugin.js?2.2.0"></script><script src="view/js/async.min.js?2.2.0"></script><script src="view/js/form.js?2.2.0"></script><script> var debug = DEBUG = 0; var url_rewrite_on = 1; var url_path = './'; var forumarr = {"1":"Tech"}; var fid = 1; var uid = 0; var gid = 0; xn.options.water_image_url = 'view/img/water-small.png'; </script><script src="view/js/wellcms.js?2.2.0"></script><a class="scroll-to-top rounded" href="javascript:void(0);"><i class="icon-angle-up"></i></a><a class="scroll-to-bottom rounded" href="javascript:void(0);" style="display: inline;"><i class="icon-angle-down"></i></a></body></html><script> var forum_url = 'list-1.html'; var safe_token = 'MS_2FqotdSZLT5qhRhUOyRKNXT22OUDegtJ5PABP2Au0U39HvvZTA5vcJN8qbzUK3dXL2_2BoFzBTXtzQ1m_2B'; var body = $('body'); body.on('submit', '#form', function() { var jthis = $(this); var jsubmit = jthis.find('#submit'); jthis.reset(); jsubmit.button('loading'); var postdata = jthis.serializeObject(); $.xpost(jthis.attr('action'), postdata, function(code, message) { if(code == 0) { location.reload(); } else { $.alert(message); jsubmit.button('reset'); } }); return false; }); function resize_image() { var jmessagelist = $('div.message'); var first_width = jmessagelist.width(); jmessagelist.each(function() { var jdiv = $(this); var maxwidth = jdiv.attr('isfirst') ? first_width : jdiv.width(); var jmessage_width = Math.min(jdiv.width(), maxwidth); jdiv.find('img, embed, iframe, video').each(function() { var jimg = $(this); var img_width = this.org_width; var img_height = this.org_height; if(!img_width) { var img_width = jimg.attr('width'); var img_height = jimg.attr('height'); this.org_width = img_width; this.org_height = img_height; } if(img_width > jmessage_width) { if(this.tagName == 'IMG') { jimg.width(jmessage_width); jimg.css('height', 'auto'); jimg.css('cursor', 'pointer'); jimg.on('click', function() { }); } else { jimg.width(jmessage_width); var height = (img_height / img_width) * jimg.width(); jimg.height(height); } } }); }); } function resize_table() { $('div.message').each(function() { var jdiv = $(this); jdiv.find('table').addClass('table').wrap('<div class="table-responsive"></div>'); }); } $(function() { resize_image(); resize_table(); $(window).on('resize', resize_image); }); var jmessage = $('#message'); jmessage.on('focus', function() {if(jmessage.t) { clearTimeout(jmessage.t); jmessage.t = null; } jmessage.css('height', '6rem'); }); jmessage.on('blur', function() {jmessage.t = setTimeout(function() { jmessage.css('height', '2.5rem');}, 1000); }); $('#nav li[data-active="fid-1"]').addClass('active'); </script>