Deklarative Syntax des HtmlInputFile-Serversteuerelements
Aktualisiert: November 2007
Erstellt ein serverseitiges Steuerelement, das dem <input type=file>-HTML-Element zugeordnet wird und das Uploaden einer Datei auf den Server ermöglicht.
<input
Type="File"
EnableViewState="False|True"
Id="string"
Visible="False|True"
OnDataBinding="OnDataBinding event handler"
OnDisposed="OnDisposed event handler"
OnInit="OnInit event handler"
OnLoad="OnLoad event handler"
OnPreRender="OnPreRender event handler"
OnUnload="OnUnload event handler"
runat="server"
/>
Hinweise
Verwenden Sie das HtmlInputFile-Steuerelement, um das <input type=file>-HTML-Element zu programmieren. Mit dem HtmlInputFile-Steuerelement können Sie auf einfache Weise eine Seite entwerfen, auf der Benutzer binäre Dateien oder Textdateien aus einem Browser in ein dafür vorgesehenes Verzeichnis auf dem Webserver uploaden können. Dateiuploads werden von allen Webbrowsern mit HTML 3.2 oder höher unterstützt.
Beispiel
Das folgende Beispiel zeigt einen einfachen Dateiupload. Der erste Codeabschnitt definiert den Ereignishandler für die Seite. Wenn der Benutzer auf die Upload-Schaltfläche im Formular klickt, werden der Dateiname, die Länge des Inhalts und die Größe des Inhalts in Bytes auf der Seite angezeigt, während die eigentliche Datei in das UploadedFiles-Verzeichnis auf dem Server geuploadet wird.
Tipp
Das enctype-Attribut des Formulars muss auf "multipart/form-data" festgelegt werden.
Der Code für das Formular implementiert ein HtmlForm-Steuerelement, ein HtmlInputFile-Steuerelement, ein HtmlInputButton-Steuerelement sowie vier HtmlGenericControls (das <div>-Element und die drei <span>-Elemente, die allesamt runat="server"-Attribut-Wert-Paare im Starttag enthalten).
Tipp
Um Informationen über die geuploadete Datei auf der Seite anzuzeigen, muss die Visible-Eigenschaft, die das HtmlGenericControl von der Control-Klasse erbt, im Ereignishandlercode auf true festgelegt werden.
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlInputFile Control</title>
</head>
<script runat="server">
Sub UploadBtn_Click(Sender as Object, e as EventArgs)
' Display information about posted file
FileName.InnerHtml = MyFile.PostedFile.FileName
MyContentType.InnerHtml = MyFile.PostedFile.ContentType
ContentLength.InnerHtml = cStr(MyFile.PostedFile.ContentLength)
FileDetails.Visible = True
' Save uploaded file to server
MyFile.PostedFile.SaveAs("c:\Uploadedfiles\uploadfile.txt")
End Sub
</script>
<body>
<form id="Form1" action="fileupload.aspx"
method="post"
enctype="multipart/form-data"
runat="server">
<h1>ASP.NET File Upload Example</h1>
Select File To Upload to Server:
<input id="MyFile"
type="file"
runat="server" />
<br /><br />
<input id="Submit1" type="submit"
value="Upload!"
onserverclick="UploadBtn_Click"
runat="server" />
<br /><br /><br />
<div id="FileDetails"
visible="false"
runat="server">
FileName: <span id="FileName" runat="server"/> <br />
ContentType: <span id="MyContentType" runat="server"/> <br />
ContentLength: <span id="ContentLength" runat="server"/>bytes
<br />
</div>
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlInputFile Control</title>
</head>
<script runat="server">
void UploadBtn_Click(Object sender, EventArgs e)
{
// Display information about posted file
FileName.InnerHtml = MyFile.PostedFile.FileName;
MyContentType.InnerHtml = MyFile.PostedFile.ContentType;
ContentLength.InnerHtml =
MyFile.PostedFile.ContentLength.ToString();
FileDetails.Visible = true;
// Save uploaded file to server
MyFile.PostedFile.SaveAs("c:\\Uploadedfiles\\uploadfile.txt");
}
</script>
<body>
<form id="Form1" action="fileupload.aspx"
method="post"
enctype="multipart/form-data"
runat="server">
<h1>ASP.NET File Upload Example</h1>
Select File To Upload to Server:
<input id="MyFile"
type="file"
runat="server" />
<br /><br />
<input id="Submit1" type="submit"
value="Upload!"
onserverclick="UploadBtn_Click"
runat="server" />
<br /><br /><br />
<div id="FileDetails"
visible="false"
runat="server">
FileName: <span id="FileName" runat="server"/> <br />
ContentType: <span id="MyContentType" runat="server"/> <br />
ContentLength: <span id="ContentLength" runat="server"/>bytes
<br />
</div>
</form>
</body>
</html>