C# 在中继器中寻址文件上载

C# 在中继器中寻址文件上载,c#,asp.net,.net,linq,C#,Asp.net,.net,Linq,所以我把我的文件上传到了我的转发器里 <asp:Content ID="Content3" ContentPlaceHolderID="content" Runat="Server"> <asp:Repeater ID="rptVrijstellingen" runat="server"> <HeaderTemplate></HeaderTemplate> <ItemTemplate>

所以我把我的文件上传到了我的转发器里

  <asp:Content ID="Content3" ContentPlaceHolderID="content" Runat="Server">
<asp:Repeater ID="rptVrijstellingen" runat="server">

        <HeaderTemplate></HeaderTemplate>
        <ItemTemplate>
        <h2><%# Eval("tblExternVak.ExternvakNaam") %></h2>
        <h4>Selecteer een bestand om te uploaden:</h4>
       Gelieve het bestand de naam te geven van het overeenkomstige vak om de verwerking 
           vlot te laten verlopen.

           <br /><br />  <br />
           <asp:FileUpload id="FileUpload1"                 
           runat="server">
           </asp:FileUpload>
       <br /><br />
       <hr />
       <br />
         <br />
        <asp:Button id="UploadButton" 
           Text="Upload file"
           OnClick="UploadButton_Click"
           runat="server">
       </asp:Button>     
       <br />    
    <br />
            </ItemTemplate>
        <SeparatorTemplate><hr /></SeparatorTemplate>
        </asp:Repeater>    
       <asp:CheckBox id="CBupload" runat="server" />
       <asp:Label id="lblUpload" runat="server"> Geleverd aan Mevrouw Van Orlé</asp:Label>
       <asp:Label id="UploadStatusLabel" runat="server" ForeColor="Red"></asp:Label>   
</asp:Content>
问题是它在转发器中找不到fileupload1和任何其他声明的内容,有人能给我一个如何在转发器中处理上传的解决方案吗?(我用页面加载中的数据填充中继器,使其存在于加载中,以便我知道这不是问题所在)


提前感谢:)

您必须迭代Repeater控件的Items集合,并使用
FindControl
方法获取
FileUpload1
对象的引用

foreach (RepeaterItem item in rptVrijstellingen.Items)
 {
    FileUpload file=(FileUpload)item.FindControl("FileUpload1");
    String fileName = file.FileName;
    FileUpload1.SaveAs(Server.MapPath(savePath + fileName));
    ....
  }

使用
rptVrijstellingen.Items[rowNumber].FindControl(“FileUpload1”)作为FileUpload
其中
rowNumber
是您要访问的行数。

您能举个小例子吗?我对c有点陌生:$Tyvm非常好,我可以给你一个+1,但我是新的:(@ToonVanDooren-谢谢!看看Meta-FAQ和
foreach (RepeaterItem item in rptVrijstellingen.Items)
 {
    FileUpload file=(FileUpload)item.FindControl("FileUpload1");
    String fileName = file.FileName;
    FileUpload1.SaveAs(Server.MapPath(savePath + fileName));
    ....
  }