MVC .NET Model Binding to Array on the fly

No blog Scottsposta ele descreve como postar uma matriz de objetos no controlado

Minha pergunt qual a melhor forma de gerar uma visualização para isso, que permite ao usuário adicionar mais itens de matriz em tempo rea

Se eu escrever

 foreach(MyModel item in Model)
 {
     <p>@Html.TextBoxFor(m => item.Name)</p>
 }

e faça com que o controlador adicione um novo item à matriz sempre que gerar<input type="text" name="item.Name" /> faltando o1 Índice da matriz.

Se eu entregar o código<input> então funciona, mas perco todos os atributos de validação do lado do cliente comodata-val-required="Name is required"

O que eu quero poder fazer é que o usuário adicione novos itens à matriz em tempo real e ainda mantenha a validação discreta ?. Qual é a melhor prática para isso?

Estou pensando em escrevê-lo usando jQuery, mas se sim, posso manter a validaçã

Atualiza Parece que a resposta do Tassadaque é uma boa solução .NET, mas parece com muito código do lado do servidor para fazer algo que deve ser muito fácil. A resposta de Muhammad Adeel Zahi está ok, mas ainda perde a validação do lado do client

Acho que acabarei escrevendo meu próprio HTML do lado do cliente manualmente e usando o plug-in de validação e jQuery live. Para que eu possa fazer toda a minha validação e adicionar e remover novos itens por todo o lado do cliente, sem nenhuma chamada para o servido

questionAnswers(2)

yourAnswerToTheQuestion