Essayez de jeter un coup d'oeil ici. c'est mon code que j'ai copié! Et il marche très bien chez moi!
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="UploadFile.ascx.cs" Inherits="Controls_components_UploadFile" %>
<table cellpadding="2" cellspacing="0" border="0">
<tr>
<td>
<asp:FileUpload ID="fup" runat="server" />
</td>
</tr>
<tr>
<td>
<asp:Button ID="btnUpload" runat="server" Text="Upload file" OnClick="btnUpload_Click" />
</td>
</tr>
<tr>
<td>
<asp:Label ID="fileDesc" runat="server" />
</td>
</tr>
</table>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Controls_components_UploadFile : System.Web.UI.UserControl
{
protected void btnUpload_Click(object sender, EventArgs e)
{
if (fup.HasFile)
{
try
{
string path = (Session["UploadPath"] == null) ? "~/Uploads/" : (string)Session["UploadPath"];
fup.SaveAs(Server.MapPath(Session["UploadPath"].ToString()) + fup.FileName);
Session["msgSuccess"] = "Fichier " + fup.PostedFile.FileName + " chargé avec succés.<br />" +
"Content type: " + fup.PostedFile.ContentType + "<br />" +
fup.PostedFile.ContentLength + " octects.";
}
catch (Exception ex)
{
Session["msgError"] = ex;
}
}
else
{
Session["msgWarning"] = "You have not specified a file.";
}
}
}

If you can't see with eyes open, close them you'll see better!