Давайте предположим, что у нас есть модель и представление, как это:
public class Test
{
public List<string> data { get; set; }
}
<form asp-action="View">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<input name="data[0]" value="dsa" />
<input name="data[1]" value="asd" />
<div class="form-group">
<input type="submit" value="Create" class="btn btn-default" />
</div>
</form>
[HttpPost]
public IActionResult View(Test input)
{
return View();
}
Я отправляю эту форму в метод контроллера, и он видит эти элементыданных правильно.
Но если я изменю индексирование на:
<input name="data[0]" value="dsa" />
<input name="data[2]" value="asd" />
, то это не сработает.Я знаю, что в этом есть смысл, но есть ли возможность отключить проверку индекса и просто вставить все эти значения в список / массив с правильной индексацией?
Итак, во 2-м случае data[0]
будет data[0]
, но data[1]
будет data[2]
.
Просто для каждого «пробела» в индексации переместите Next objs, чтобы заполнить этот пробел.