2012-04-05 2 views
0

3 개의 파일 입력이있는 웹 페이지가 있습니다. 사용자가 파일을 업로드 할 때 전송해야하는 양식의 특정 필드가 있습니다. POST에서 사용자 정의 데이터를 추가하는 방법과 서버에서 다시 가져 오는 방법을 파악할 수 없습니다.POST에 사용자 정의 데이터 추가

<form action="FilesUploader.ashx" method="post"> 

    <div id="dvNewAttachment1"> 
     <span>Attachment Type</span> 
     <select id="ddlAttachmentType1"> 
      <option>T1</option> 
      <option>T2</option> 
      <option>T3</option> 
     </select> 
     <span>Description</span> 
     <input id="txtDesc1" /> 
     <select id="ddlApproval1"> 
      <option>Yes</option> 
      <option>No</option> 
     </select> 
     <input id="fileUploader1" type="file" runat="server" /> 
    </div> 
    <br /> 
    --------------- 
    <div id="dvNewAttachment2"> 
     <span>Attachment Type</span> 
     <select id="ddlAttachmentType2"> 
      <option>T1</option> 
      <option>T2</option> 
      <option>T3</option> 
     </select> 
     <span>Description</span> 
     <input id="txtDesc2" /> 
     <select id="ddlApproval2"> 
      <option>Yes</option> 
      <option>No</option> 
     </select> 
     <input id="fileUploader2" type="file" runat="server" /> 
    </div> 
    <br /> 
    ------------------------------- 
    <div id="dvNewAttachment3"> 
     <span>Attachment Type</span> 
     <select id="ddlAttachmentType3"> 
      <option>T1</option> 
      <option>T2</option> 
      <option>T3</option> 
     </select> 
     <span>Description</span> 
     <input id="txtDesc3" /> 
     <select id="ddlApproval3"> 
      <option>Yes</option> 
      <option>No</option> 
     </select> 
     <input id="fileUploader3" type="file" runat="server" /> 
    </div> 


<input type="submit" /> 

</form> 

이 내 핸들러처럼 보이는 방법은 다음과 같습니다 : 3 개 파일 입력 및 다른 텍스트 상자/드롭 다운으로

ASPX 페이지 : 내 코드처럼 보이는 방법이다

public void ProcessRequest(HttpContext context) 
     { 

      HttpPostedFile myFile = context.Request.Files[0]; 

      int nFileLen = myFile.ContentLength; 

      byte[] buffer = new byte[nFileLen]; 

      using (BinaryReader br = new BinaryReader(myFile.InputStream)) 
      { 
       br.Read(buffer, 0, buffer.Length); 
      } 

     } 

당신이 할 수 내가 3 업로드를 가지고 각 첨부 파일 형식 및 내 처리기에서 각 입력 파일을 검색 할 필요가 연결된 설명이 있습니다.

지금은 첫 번째 입력에서 파일을 처리하고 있지만 나중에 입력을 통해 반복하여 처리 할 예정입니다.

+0

무엇이 문제입니까? – Sly

+0

POST에서 사용자 정의 데이터를 추가하는 방법과 서버에서 다시 가져 오는 방법을 알아낼 수 없습니다. – Asdfg

+0

맞춤 데이터 란 무엇입니까? – Sly

답변

0

핸들러는 다음 양식이 같은 추가 속성을 가질 필요가 파일 업 로더에 배치 파일을 수신하지 않는 경우 :

는 서버에서 드롭 다운에서 값을 얻기 위하여
<form action="FilesUploader.ashx" method="post" enctype="multipart/form-data"> 

당신이 name를 제공 할 필요를 속성 :

<select id="ddlApproval1" name="ddlApproval1"> 
    <option>Yes</option> 
    <option>No</option> 
</select> 
+0

context.Request.Files 컬렉션을 사용하여 파일에 액세스 할 수 있습니다. 그것은 나에게 모든 3 개의 입력 컨트롤을 제공합니다. 하지만 드롭 다운 및 텍스트 상자를 가져와야합니다 – Asdfg

+0

드롭 다운을 지원하기 위해 내 대답을 편집했습니다 – Sly

+0

감사합니다. 이름 문제를 몰랐습니다. – Asdfg