HttpFileCollection クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
クライアントによってアップロードされたファイルへのアクセスを提供し、そのファイルを編成します。
public ref class HttpFileCollection sealed : System::Collections::Specialized::NameObjectCollectionBase
public sealed class HttpFileCollection : System.Collections.Specialized.NameObjectCollectionBase
type HttpFileCollection = class
inherit NameObjectCollectionBase
Public NotInheritable Class HttpFileCollection
Inherits NameObjectCollectionBase
- 継承
例
次の例では、オブジェクトの HttpFileCollection プロパティから返されるコレクションにアクセスする Files 方法を HttpRequest 示します。 コレクションには HttpFileCollection 、Web ページ上の 2 つの FileUpload コントロールが設定されます。 ファイル コレクション内の項目がコントロールに BulletedList 表示されます。
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
// Clear the BulletedList.
BulletedList1.Items.Clear();
// Check to see if at least one file was specified.
if (FileUpload1.HasFile | FileUpload2.HasFile)
{
Label1.Text = "The file collection consists of:";
// Get the HttpFileCollection.
HttpFileCollection hfc = Request.Files;
foreach (String h in hfc.AllKeys)
{
// Add an item to the BulletedList if a file
// was specified for the corresponding control.
if (hfc[h].ContentLength > 0)
BulletedList1.Items.Add(Server.HtmlEncode(hfc[h].FileName));
}
}
else
{
Label1.Text = "You did not specify any files to upload or " +
"the file(s) could not be found.";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>HttpFileCollection Example</title>
</head>
<body>
<form id="form1"
runat="server">
<div>
<asp:FileUpload ID="FileUpload1"
runat="server" />
<br />
<asp:FileUpload ID="FileUpload2"
runat="server" />
<br />
<asp:Button ID="Button1"
runat="server"
OnClick="Button1_Click"
Text="Upload" />
<br />
<asp:Label ID="Label1"
runat="server"/>
<br />
<asp:BulletedList ID="BulletedList1"
runat="server">
</asp:BulletedList>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
' Clear the BulletedList.
BulletedList1.Items.Clear()
' Check to see if at least one file was specified.
If (FileUpload1.HasFile Or FileUpload2.HasFile) Then
Label1.Text = "The file collection consists of:"
' Get the HttpFileCollection.
Dim hfc As HttpFileCollection = Request.Files
For Each h As String In hfc.AllKeys
' Add an item to the BulletedList if a file
' was specified for the corresponding control.
If (hfc(h).ContentLength > 0) Then
BulletedList1.Items.Add(Server.HtmlEncode(hfc(h).FileName))
End If
Next
Else
Label1.Text = "You did not specify any files to upload or " & _
"the file(s) could not be found."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>HttpFileCollection Example</title>
</head>
<body>
<form id="form1"
runat="server">
<div>
<asp:FileUpload ID="FileUpload1"
runat="server" />
<br />
<asp:FileUpload ID="FileUpload2"
runat="server" />
<br />
<asp:Button ID="Button1"
runat="server"
OnClick="Button1_Click"
Text="Upload" />
<br />
<asp:Label ID="Label1"
runat="server"/>
<br />
<asp:BulletedList ID="BulletedList1"
runat="server">
</asp:BulletedList>
</div>
</form>
</body>
</html>
注釈
クライアントは、ファイルをエンコードし、HTTP Content-Type
ヘッダー multipart/form-data
が .のマルチパート MIME 形式を使用してコンテンツ本文で送信します。 ASP.NET は、エンコードされたファイルをコンテンツ本文から.HttpFileCollection クラスのメソッドとプロパティは、 HttpPostedFile 各ファイルの内容とプロパティへのアクセスを提供します。
プロパティ
AllKeys |
ファイル コレクション内のすべてのメンバーのキー (名前) を格納している文字列配列を取得します。 |
Count |
NameObjectCollectionBase インスタンスに格納されているキーと値のペアの数を取得します。 (継承元 NameObjectCollectionBase) |
IsReadOnly |
NameObjectCollectionBase インスタンスが読み取り専用かどうかを示す値を取得または設定します。 (継承元 NameObjectCollectionBase) |
Item[Int32] |
指定した数値インデックスを持つオブジェクトを HttpFileCollection から取得します。 |
Item[String] |
指定した名前のオブジェクトをファイル コレクションから取得します。 |
Keys |
NameObjectCollectionBase.KeysCollection インスタンスのすべてのキーを含んでいる NameObjectCollectionBase インスタンスを取得します。 (継承元 NameObjectCollectionBase) |
メソッド
明示的なインターフェイスの実装
ICollection.CopyTo(Array, Int32) |
NameObjectCollectionBase 全体を互換性のある 1 次元の Array にコピーします。コピー操作は、コピー先の配列の指定したインデックスから始まります。 (継承元 NameObjectCollectionBase) |
ICollection.IsSynchronized |
NameObjectCollectionBase オブジェクトへのアクセスが同期されている (スレッド セーフである) かどうかを示す値を取得します。 (継承元 NameObjectCollectionBase) |
ICollection.SyncRoot |
NameObjectCollectionBase オブジェクトへのアクセスを同期するために使用できるオブジェクトを取得します。 (継承元 NameObjectCollectionBase) |
拡張メソッド
Cast<TResult>(IEnumerable) |
IEnumerable の要素を、指定した型にキャストします。 |
OfType<TResult>(IEnumerable) |
指定された型に基づいて IEnumerable の要素をフィルター処理します。 |
AsParallel(IEnumerable) |
クエリの並列化を有効にします。 |
AsQueryable(IEnumerable) |
IEnumerable を IQueryable に変換します。 |