Vinculação de modelo MVC a uma coleção em que a coleção não começa com um índice 0
Eu estou tentando executar a validação remota em uma propriedade de um item dentro de uma coleção. A validação funciona bem no primeiro item da coleção. A solicitação http para o método de validação é semelhante a:
/Validation/IsImeiAvailable?ImeiGadgets[0].ImeiNumber=123456789012345
No entanto, no segundo item em que a URL aparece abaixo, a validação não funciona
/Validation/IsImeiAvailable?ImeiGadgets[1].ImeiNumber=123456789012345
Agora eu tenho certeza que a razão para isso, é que a ligação não funcionará em uma coleção que não comece com um índice zero.
Meu método de validação tem uma assinatura como abaixo:
public JsonResult IsImeiAvailable([Bind(Prefix = "ImeiGadgets")] Models.ViewModels.ImeiGadget[] imeiGadget)
Porque eu estou passando um item dentro de uma coleção eu tenho que ligar assim, mas o que eu estou realmente passando é apenas um valor único.
Existe alguma maneira que eu possa lidar com isso além de apenas vinculá-lo como uma string de consulta antiga simples.
obrigado
Edit: Esta é a solução rápida para obter a variável Imei, mas eu prefiro usar o modelo de ligação:
string imeiNumber = Request.Url.AbsoluteUri.Substring(Request.Url.AbsoluteUri.IndexOf("=")+1);
Edit: Aqui está a minha classe ImeiGadget:
public class ImeiGadget
{
public int Id { get; set; }
[Remote("IsImeiAvailable", "Validation")]
[Required(ErrorMessage = "Please provide the IMEI Number for your Phone")]
[RegularExpression(@"(\D*\d){15,17}", ErrorMessage = "An IMEI number must contain between 15 & 17 digits")]
public string ImeiNumber { get; set; }
public string Make { get; set; }
public string Model { get; set; }
}