Я пытаюсь найти способ обработки частичных обновлений;ViewModel имеет 5 полей, но в Запросе отправляется только одно поле (т. Е. Отправляются только те поля, которые были изменены, вместо представления всей модели представления), поскольку нулевые значения не были явно отправлены для других полей, я не думаю, чтоони должны быть установлены в ноль.Так как AutoMapper не имеет какой-либо поддержки списка привязок, найти элегантное решение оказывается сложно ...
public virtual IActionResult Edit(int id, ViewModel1 viewModel)
{
var model = GetModel(id);
mapper.Map(viewModel, model);
// any field that was not posted, but exists in the ViewModel1 is now null in the model
...
}
Единственный подход, который я могу придумать, - это использовать Request.Form.Keys.и Reflection для создания ExpandoObject, который содержит только опубликованные свойства, затем задайте CreateMissingTypeMaps и ValidateInlineMaps, чтобы позволить AutoMapper отображать динамические типы ... Просто кажется, что это грязный обходной путь для компенсации функциональности, отсутствующей в AutoMapper ...Есть ли стандартный способ справиться с этим?