How to use FileUpload control in asp.net c#

FileUpload Web Server Control
FileUpload is an ASP.NET web server control that allow users to send (upload) a file from their computer to server. Uploaded file submitted to the server as part of the Web Browser request during PostBack. User only can upload file which size is bellow the maximum allowed file size. .NET developers can set the uploaded file's maximum size by setting the MaximumRequestLength configuration value.

We can test the fileupload control's HasFile property to check whether FileUpload control has an uploaded file. Page developers also can control the uploaded files MIME type and extension. Developers can only accept the specific MIME types files and those files which have specific extension.

PostedFile property gets the underlying HttpPostedFile object for uploaded file. Using FileUpload control's PostedFile property we can access aditional properties on the uploaded file. We can get uploaded file's length (file size) using ContentLength property. ContentType property returns the posted file's MIME content type. FileName property can get access of posted client file name including directory path. We can get a Stream object of uploaded file's to reading the contents.

SaveAs method save the uploaded file to a specified path on the web server. ASP.NET developers can rename the uploaded file to store in web server.

The following ASP.NET c# example source code demonstrate us, how can we use FileUpload web server control to upload a client file to web server.
FileUploadControl.aspx

<%@ Page Language="C#" %>

<!DOCTYPE html>

<script runat="server">
    protected void Button1_Click(object sender, System.EventArgs e) {
        if (FileUpload1.HasFile)
            try {
                FileUpload1.SaveAs("C:\\UploadFolder\\"+FileUpload1.FileName);
                Label1.Text = "Uploaded File Name: " +
                    FileUpload1.PostedFile.FileName +
                    "<br />File Size: " +
                    FileUpload1.PostedFile.ContentLength +
                    "<br />File Type: " +
                    FileUpload1.PostedFile.ContentType;
            }
            catch (Exception ex){
                Label1.Text = "Error occured: " + ex.Message.ToString();
            }
        else{
            Label1.Text = "Select a file for upload";
        }
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>How to use FileUpload control in asp.net</title>
</head>
<body style="padding:25px">
    <form id="form1" runat="server">
    <div>
        <h2 style="color:MidnightBlue; font-style:italic;">      
            How to use FileUpload control
        </h2>      
        <hr width="450" align="left" color="Gainsboro" />
        <asp:Label 
            ID="Label1" 
            runat="server" 
            Font-Size="Large" 
            ForeColor="DarkGreen"
            Font-Italic="true"
            Font-Names="Comic Sans MS"
            />
        <br /><br />
        <asp:FileUpload 
            ID="FileUpload1" 
            runat="server"
            Font-Bold="true"
            Font-Names="Comic Sans MS"
            Font-Size="Large"
            BackColor="Gold"
            />
        <asp:Button 
            ID="Button1" 
            runat="server" 
            Text="Upload This File" 
            OnClick="Button1_Click"
            Font-Bold="true"
            ForeColor="DodgerBlue"
            Height="45"
            />
    </div>
    </form>
</body>
</html>


More asp.net examples