PM> dotnet add package DynamicVML
The Dynamic View Model Lists library provides a templating engine to render dynamic item lists in ASP.NET. A dynamic list is a list inside an HTML form where the user can add new items to a list after the page has been rendered. In ASP.NET, the default model binder makes certain assumptions to determine the name of the fields in the form and how they should be posted back to the server. Using this library, those assumptions are always fulfilled and your forms posted correctly.
This library provides an alternative to the EditorForMany extension by @mattalun and BeginCollectionItem by Steve Sanderson. However, it supports nested lists of any depth, does not require adding an extra Index field to your existing models or view models, and suports multiple editor and display templates for your items. The library can also make your controllers include additionalViewData that had been specified in your view without cluttering your controller code with too many details about the view.
In addition, the library can also handle requests sent by either GETs or POSTs.
For more information on how to use it and for sample applications that can help you get started, check the project website.