다음을 통해 공유


HttpFileCollection 클래스

정의

클라이언트에서 업로드한 파일에 대한 액세스를 제공하고 구성합니다.

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

예제

다음 예제에서는 개체의 속성에서 반환 된 HttpFileCollection 컬렉션에 Files 액세스 하는 방법을 보여 줍니다 HttpRequest . 컬렉션은 HttpFileCollection 웹 페이지의 두 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 각 파일의 내용과 속성에 대한 액세스를 제공합니다.

속성

Name Description
AllKeys

파일 컬렉션에 있는 모든 멤버의 키(이름)를 포함하는 문자열 배열을 가져옵니다.

Count

인스턴스에 포함된 NameObjectCollectionBase 키/값 쌍의 수를 가져옵니다.

(다음에서 상속됨 NameObjectCollectionBase)
IsReadOnly

인스턴스가 읽기 전용인지 여부를 NameObjectCollectionBase 나타내는 값을 가져오거나 설정합니다.

(다음에서 상속됨 NameObjectCollectionBase)
Item[Int32]

에서 지정된 숫자 인덱스가 있는 개체를 HttpFileCollection가져옵니다.

Item[String]

파일 컬렉션에서 지정된 이름을 가진 개체를 가져옵니다.

Keys

인스턴스의 NameObjectCollectionBase.KeysCollection 모든 키를 포함하는 인스턴스를 NameObjectCollectionBase 가져옵니다.

(다음에서 상속됨 NameObjectCollectionBase)

메서드

Name Description
BaseAdd(String, Object)

지정된 키와 값이 있는 항목을 인스턴스에 NameObjectCollectionBase 추가합니다.

(다음에서 상속됨 NameObjectCollectionBase)
BaseClear()

인스턴스에서 NameObjectCollectionBase 모든 항목을 제거합니다.

(다음에서 상속됨 NameObjectCollectionBase)
BaseGet(Int32)

인스턴스의 지정된 인덱스에서 항목의 NameObjectCollectionBase 값을 가져옵니다.

(다음에서 상속됨 NameObjectCollectionBase)
BaseGet(String)

인스턴스에서 NameObjectCollectionBase 지정된 키를 가진 첫 번째 항목의 값을 가져옵니다.

(다음에서 상속됨 NameObjectCollectionBase)
BaseGetAllKeys()

인스턴스의 String 모든 키를 포함하는 배열을 NameObjectCollectionBase 반환합니다.

(다음에서 상속됨 NameObjectCollectionBase)
BaseGetAllValues()

인스턴스의 Object 모든 값을 포함하는 배열을 NameObjectCollectionBase 반환합니다.

(다음에서 상속됨 NameObjectCollectionBase)
BaseGetAllValues(Type)

인스턴스의 모든 값을 포함하는 지정된 형식의 배열을 NameObjectCollectionBase 반환합니다.

(다음에서 상속됨 NameObjectCollectionBase)
BaseGetKey(Int32)

인스턴스의 지정된 인덱스에서 항목의 NameObjectCollectionBase 키를 가져옵니다.

(다음에서 상속됨 NameObjectCollectionBase)
BaseHasKeys()

인스턴스에 키가 없는 NameObjectCollectionBase항목이 포함되어 있는지 여부를 null 나타내는 값을 가져옵니다.

(다음에서 상속됨 NameObjectCollectionBase)
BaseRemove(String)

인스턴스에서 NameObjectCollectionBase 지정된 키를 가진 항목을 제거합니다.

(다음에서 상속됨 NameObjectCollectionBase)
BaseRemoveAt(Int32)

인스턴스의 지정된 인덱스에 있는 항목을 제거합니다 NameObjectCollectionBase .

(다음에서 상속됨 NameObjectCollectionBase)
BaseSet(Int32, Object)

인스턴스의 지정된 인덱스에서 항목의 NameObjectCollectionBase 값을 설정합니다.

(다음에서 상속됨 NameObjectCollectionBase)
BaseSet(String, Object)

인스턴스에서 지정된 키를 NameObjectCollectionBase 가진 첫 번째 항목의 값을 설정합니다(있는 경우). 그렇지 않으면 지정된 키와 값을 가진 항목을 인스턴스에 NameObjectCollectionBase 추가합니다.

(다음에서 상속됨 NameObjectCollectionBase)
CopyTo(Array, Int32)

파일 컬렉션 Array 의 멤버를 배열의 지정된 인덱스에서 시작 부분으로 복사합니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 여부를 확인합니다.

(다음에서 상속됨 Object)
Get(Int32)

HttpPostedFile 파일 컬렉션에서 지정된 숫자 인덱스가 있는 개체를 반환합니다.

Get(String)

HttpPostedFile 파일 컬렉션에서 지정된 이름을 가진 개체를 반환합니다.

GetEnumerator()

를 반복하는 열거자를 반환합니다 NameObjectCollectionBase.

(다음에서 상속됨 NameObjectCollectionBase)
GetHashCode()

기본 해시 함수로 사용됩니다.

(다음에서 상속됨 Object)
GetKey(Int32)

지정된 숫자 인덱스가 HttpFileCollection 있는 멤버의 이름을 반환합니다.

GetMultiple(String)

지정된 이름과 일치하는 모든 파일을 반환합니다.

GetObjectData(SerializationInfo, StreamingContext)
사용되지 않음.

인터페이스를 ISerializable 구현하고 인스턴스를 serialize하는 데 필요한 데이터를 반환합니다 NameObjectCollectionBase .

(다음에서 상속됨 NameObjectCollectionBase)
GetType()

현재 인스턴스의 Type 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
OnDeserialization(Object)

역직렬화가 ISerializable 완료되면 인터페이스를 구현하고 역직렬화 이벤트를 발생합니다.

(다음에서 상속됨 NameObjectCollectionBase)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

명시적 인터페이스 구현

Name Description
ICollection.CopyTo(Array, Int32)

대상 배열의 지정된 인덱스에서 시작하여 호환되는 1차원NameObjectCollectionBase으로 전체를 Array 복사합니다.

(다음에서 상속됨 NameObjectCollectionBase)
ICollection.IsSynchronized

개체에 대한 액세스 NameObjectCollectionBase 가 동기화되는지 여부를 나타내는 값을 가져옵니다(스레드로부터 안전).

(다음에서 상속됨 NameObjectCollectionBase)
ICollection.SyncRoot

개체에 대한 액세스를 동기화하는 데 사용할 수 있는 개체를 NameObjectCollectionBase 가져옵니다.

(다음에서 상속됨 NameObjectCollectionBase)

확장명 메서드

Name Description
AsParallel(IEnumerable)

쿼리의 병렬 처리를 사용하도록 설정합니다.

AsQueryable(IEnumerable)

IEnumerable IQueryable변환합니다.

Cast<TResult>(IEnumerable)

IEnumerable 요소를 지정된 형식으로 캐스팅합니다.

OfType<TResult>(IEnumerable)

지정된 형식에 따라 IEnumerable 요소를 필터링합니다.

적용 대상

추가 정보