Edição de uma lista de comprimento variável, estilo asp.net MVC 3 com tabela

Estou seguindo a postagem do blog de Steven Sandersonaqu para criar uma lista de itens editável e de tamanho variável. Em seu post, ele usa divs para exibir um novo item na lista, mas estou usando uma tabela. Assim, minha visão parcial para cada item está renderizando uma tag tr com os vários campos a serem editados. No momento, minha visão parcial é mais ou menos assim:

<tr>                
       @using (Html.BeginCollectionItem("LineItems"))
       {             
            <td>        
                @Html.TextBoxFor(m => m.Description)
                @Html.ValidationMessageFor(m => m.Description)                              
            </td>
            <td>
                @Html.TextBoxFor(m => m.Quantity)        
                @Html.ValidationMessageFor(m => m.Quantity)
            </td>
            <td>
                @Html.TextBoxFor(m => m.Amount)          
                @Html.ValidationMessageFor(m => m.Amount)       
            </td>
       }       
</tr>

Este é processado corretamente em todos os navegadores que testei, mas o problema é que isso realmente gera HTML inválido, pois coloca uma tag de entrada oculta logo após a tag tr de abertur

<tr>
   <input type="hidden" name="LineItems.index" .... />
   <td>
      ...
   </td>
   ...
</tr>

Há um comentário de outro usuário na postagem vinculada que diz que você pode mover a instrução using para a primeira tag e ela funciona, mas não consegui fazer isso funcionar usando o ASP.NET MVC 3 e o mecanismo de exibição Razor .

Alguém tem alguma idéia de como usar a lógica apresentada por Steven Sanderson, mas obtém o campo de entrada de índice oculto dentro do primeiro td para não gerar HTML inválid

Obrigad

questionAnswers(1)

yourAnswerToTheQuestion