Yuk..
dirty fix:
Send a counter with the Editor ViewData, use this to manualy construct the name and id of the controls.
in the Ajax call I send the HtmlTable tr count to the PartialView request.
@Html.EditorFor(m => Model.Regels_[i], new { count = i })
string s = ViewData["count"].ToString();
<td>
@Html.DropDownListFor(m => Model.Btwpercentage, new SelectList(new List<int>() { 0, 6, 21 }, 21), new {
Name = $"Regels_[{s}].Btwpercentage",
id = $"Regels__{s}__Btwpercentage",
type = "number"
})
</td>
public async Task<PartialViewResult> InkoopRegelRow(int? id) {
ViewData["count"] = id;
return PartialView("~/Views/Inkoop/EditorTemplates/InkoopOrderRegel.cshtml", new InkoopOrderRegel());
}