ユーザーが非同期コールバックでアップロードできるようにしたいファイルのリスト(データベースに保存されている)があります。
期待している各ファイルの名前の横に、 AJAXControlToolkitのAsyncFileUploadコントロールを表示するところまで来ました。
<asp:Repeater ID="SourceTables" runat="server">
<ItemTemplate>
<tr>
<td>
<%#DataBinder.Eval(Container.DataItem, "LongName")%>
</td>
<td>
<ajax:AsyncFileUpload runat="server" ClientIDMode="AutoID" />
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
これらの非同期アップロードコントロールはすべて、コードビハインドで同じメソッドを呼び出すことになります。これは問題ありませんが、ファイルを保存するときに、どのコントロールがポストバックを引き起こしているのか(つまり、いくつかのファイルのどれがちょうどアップロードされました)。ただし、リピーター内でIDを動的に設定することはできませんでした(コードビハインドからのみ可能だと思います)。
明らかにこれは機能しません:
<ajax:AsyncFileUpload ID=<%#DataBinder.Eval(Container.DataItem, "ShortName")%> runat="server" ClientIDMode="AutoID" />
各アップロードコントロールのIDをリピーター内で動的に(またはその他の方法で)設定できる別の方法や、別の方法はありますか?