ASP.NET Web API 2 y actualizaciones parciales
Estamos utilizando ASP.NET Web API 2 y queremos exponer la capacidad de editar parcialmente algún objeto de la siguiente manera:
HTTP PATCH /customers/1
{
"firstName": "John",
"lastName": null
}
... para establecerfirstName
a"John"
ylastName
anull
.
HTTP PATCH /customers/1
{
"firstName": "John"
}
... solo para actualizarfirstName
a"John"
y no tocarlastName
en absoluto. Supongamos que tenemos muchas propiedades que queremos actualizar con tanta semántica.
Este es un comportamiento bastante conveniente que es ejercido porOData por ejemplo.
El problema es que el serializador JSON predeterminado solo apareceránull
en ambos casos, por lo que es imposible distinguirlo.
Estoy buscando alguna forma de anotar el modelo con algún tipo de envoltorios (con valor e indicador establecido / no establecido dentro) que permita ver esta diferencia. ¿Alguna solución existente para esto?