ASP.Net/Components/File Upload

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

File Upload Demo (C#)

   <source lang="csharp">

<%@ Page language="c#" src="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="UploadFile.WebForm1" %> <HTML>

 <body>
   <form id="Form1" enctype="multipart/form-data" method="post" runat="server">
     <INPUT id="FileInput" style="Z-INDEX: 101; LEFT: 32px; WIDTH: 552px; POSITION: absolute; TOP: 24px; HEIGHT: 24px" type="file" size="72" name="File1" runat="server">
     <asp:button id="cmdUpload" style="Z-INDEX: 102; LEFT: 32px; POSITION: absolute; TOP: 72px" runat="server" Text="Upload"></asp:button>
     <asp:Label id="lblInfo" style="Z-INDEX: 103; LEFT: 32px; POSITION: absolute; TOP: 128px" runat="server" Width="608px" Height="72px" Font-Names="Verdana" Font-Size="Medium" Font-Bold="True"></asp:Label></form>
 </body>

</HTML>

<%-- using System; using System.Collections; using System.ruponentModel; 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; using System.IO; namespace UploadFile {

 /// <summary>
 /// Summary description for WebForm1.
 /// </summary>
 public class WebForm1 : System.Web.UI.Page
 {
   protected System.Web.UI.WebControls.Button cmdUpload;
   protected System.Web.UI.WebControls.Label lblInfo;
   protected System.Web.UI.HtmlControls.HtmlInputFile FileInput;
 
   private void Page_Load(object sender, System.EventArgs e)
   {
     // Only accept image types.
     FileInput.Accept = "image/*";
   }
   #region Web Form Designer generated code
   override protected void OnInit(EventArgs e)
   {
     //
     // CODEGEN: This call is required by the ASP.NET Web Form Designer.
     //
     InitializeComponent();
     base.OnInit(e);
   }
   
   /// <summary>
   /// Required method for Designer support - do not modify
   /// the contents of this method with the code editor.
   /// </summary>
   private void InitializeComponent()
   {    
     this.cmdUpload.Click += new System.EventHandler(this.cmdUpload_Click);
     this.Load += new System.EventHandler(this.Page_Load);
   }
   #endregion
   private void cmdUpload_Click(object sender, System.EventArgs e)
   {
           if (FileInput.PostedFile.FileName == "")
           {
               lblInfo.Text = "No file specified.";
           }
           else
           {
               try
               {
                   string serverFileName = Path.GetFileName(FileInput.PostedFile.FileName);
                   //FileInput.PostedFile.SaveAs(@"c:\" + serverFileName);
                   FileInput.PostedFile.SaveAs(MapPath(".") + serverFileName);
                   lblInfo.Text = "File " + serverFileName;
                   lblInfo.Text += " uploaded successfully.";
               }
               catch (Exception err)
               {
                   lblInfo.Text = err.Message;
               }
           }
   }
 }

} --%>

      </source>
   
  


File Uploading in ASP.NET (VB.net)

   <source lang="csharp">

<%@ Page Language="vb" %> <html>

  <head>
     <title>File Uploading in ASP.NET</title>
  <script runat="server">
     Sub UploadBtn_Click(Sender as Object, e as EventArgs)
        If InStr(Request.ContentType, "multipart/form-data") Then
           Dim Counter1 As Integer
           Dim Keys() As String
           Dim Files As HttpFileCollection

           Files = Request.Files
           Keys = Files.AllKeys
           For Counter1 = 0 To Keys.GetUpperBound(0)
              Response.Write("File ID: " & Keys(Counter1) & "
") Response.Write("File Name/Path: " & Files(Counter1).FileName & "
") Next Counter1 Else Response.Write("No files uploaded, or wrong content type!") End If End Sub </script> </head>

<body> <form id="UploadForm" action="retrieveFiles.aspx" method="post" enctype="multipart/form-data" runat="server">

  Select File To Upload to Server: 
  
<input id="MyFile" type="file" runat="server">
<input id="MyFile2" type="file" runat="server">
<input type="submit" value="Upload!" onserverclick="UploadBtn_Click" runat="server" id="Submit1">

</form> </body> </html>

<%-- retrieveFiles.aspx <%@ Page Language="vb" %> <html>

  <head>
     <title>File Uploading in ASP.NET</title>
  <script runat="server">
     Sub Page_Load()
        If InStr(Request.ContentType, "multipart/form-data") Then
           Dim Counter1 As Integer
           Dim Keys() As String
           Dim Files As HttpFileCollection

           Files = Request.Files
           Keys = Files.AllKeys
           For Counter1 = 0 To Keys.GetUpperBound(0)
              Response.Write("File ID: " & Keys(Counter1) & "
") Response.Write("File Name/Path: " & Files(Counter1).FileName & "
") Next Counter1 Else Response.Write("No files uploaded, or wrong content type!") End If End Sub </script> </head>

<body>
</body> </html> --%>

      </source>
   
  


Upload File control (C#)

   <source lang="csharp">

<%@ Page Language="C#" %> <%@ Import Namespace="System.IO" %> <script runat="server">

   protected void btnAdd_Click(object sender, EventArgs e)
   {
       if (upImage.HasFile)
       {
           if (CheckFileType(upImage.FileName))
           {
               upImage.SaveAs(MapPath(upImage.FileName));
           }
       }
   }
   bool CheckFileType(string fileName)
   {
       string ext = Path.GetExtension(fileName);
       switch (ext.ToLower())
       {
           case ".gif":
               return true;
           case ".png":
               return true;    
           case ".jpg":
               return true;            
           case ".jpeg":
               return true;
           default:
               return false;        
       }
   }
   void Page_PreRender()
   {
       string upFolder = MapPath(".");
       DirectoryInfo dir = new DirectoryInfo(upFolder);
       dlstImages.DataSource = dir.GetFiles();
       dlstImages.DataBind();
   }

</script> <html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head1" runat="server">

   <title>FileUpload File</title>

</head> <body>

   <form id="form1" runat="server">
   <asp:Label
       id="lblImageFile"
       Text="Image File:"
       AssociatedControlID="upImage"
       Runat="server" />
   <asp:FileUpload
       id="upImage"
       Runat="server" />
   

<asp:Button id="btnAdd" Text="Add Image" OnClick="btnAdd_Click" Runat="server" />

   <asp:DataList
       id="dlstImages"
       RepeatColumns="3"
       runat="server">
       <ItemTemplate>
       <asp:Image ID="Image1" 
           ImageUrl="<%# Eval("Name", "./{0}") %>"
           style="width:200px"
           Runat="server" />
       
<%# Eval("Name") %> </ItemTemplate> </asp:DataList>
   </form>

</body> </html>

      </source>
   
  


Upload file to the server (VB.net)

   <source lang="csharp">

<%@ Page Language=VB Debug=true %> <script runat=server> Sub SubmitButton_Click(Source As Object, e As EventArgs)

   MyFile.PostedFile.SaveAs(txtFileSaveAs.Value)
   TheMessage.InnerHTML = "File uploaded!"

End Sub </SCRIPT> <HTML> <HEAD> <TITLE>Upload Sample Page</TITLE> </HEAD> <BODY> <form enctype="multipart/form-data" runat="server"> Enter the name and path of the file to upload: <input

   id="MyFile" 
   type="file" 
   runat="server"

>

Enter the name only to save the file as:
<input

   id="txtFileSaveAs" 
   type="text" 
   runat="server"

>



<input

   runat="server"
   type=button 
   value="Upload" 
   OnServerClick="SubmitButton_Click" 

> </Form> </BODY> </HTML>

      </source>
   
  


Uploading Files with the HTML Input File Control (VB.net)

   <source lang="csharp">

<%@ Page Language=VB Debug=true %> <script runat=server> Sub SubmitButton_Click(Source As Object, e As EventArgs) " Not working " Change the following folder as your settings " MyFile.PostedFile.SaveAs("./" & txtFileSaveAs.Value)

   TheMessage.InnerHTML = "File uploaded!"

End Sub </SCRIPT> <HTML> <HEAD> <TITLE>Uploading Files with the HTMLInputFile Control</TITLE> </HEAD> <BODY> <form

   enctype="multipart/form-data" 
   runat="server">

Enter the name and path of the file to upload:
<input

   id="MyFile" 
   type="file" 
   runat="server"

>

Enter the name only to save the file as:
<input

   id="txtFileSaveAs" 
   type="text" 
   runat="server"

>



<input

   runat="server"
   type=button 
   value="Upload" 
   OnServerClick="SubmitButton_Click" 

> </Font> </Form> </BODY> </HTML>

      </source>