Это связано с ASP.Net MVC 2
У меня есть модель (MoviesForAll), связанная с моим представлением, и у этой модели есть коллекция класса ICollection. Я хочу, чтобы мой пользователь покупал один билет за один раз, нажав кнопку отправки «Купить этот билет», поэтому я разместил кнопку рядом с каждой строкой, в которой указаны данные билета. Это приводит к следующей последовательности
<%@Page Title="title" Language="C#" MasterPageFile="~/Views/Shared/MyMaster.Master"
Inherits="System.Web.Mvc.ViewPage<OnlineBooking.Movies.MoviesForAll>">
<Table>
<% for(i=0; i<Model.Tickets.count; i++)
{ %>
<tr>
<% using (Html.BeginForm(myaction(), FormMethod.Post, new {id="myform"}))
{ %>
<td>
<%= Model.tickets[i].ticketID %>
<%= Html.HiddenFor(m=>m.tickets[i].ticketID) %>
</td>
<td>
<%= Model.tickets[i].seatNo %>
<%= Html.HiddenFor(m=>m.tickets[i].seatNo) %>
</td>
...
...
<td>
<input type="submit" value="buy this ticket" runat="server">
</td>
<% } %>
</tr>
<% } %>
</table>
Это создает форму для каждой строки заявок, имеющую одну кнопку отправки в этой форме.
Проблема в том, что, когда я отправляю первую строку (с индексом 0), нажимая кнопку, она отправляется правильно, и я вижу значения в методе контроллера. Но никакие другие строки не доходят до контроллера, даже если я использовал скрытые поля, чтобы связать его.
Я что-то упускаю здесь, что-то определенное для индекса или что-то в этом роде?
Заранее спасибо ..