Фон
У меня есть веб-сервер, использующий Nancy 1.4.3. Привязка модели Нэнси используется для десериализации данных из HTTP-запроса с телом json. Смотрите пример ниже.
Пример
Конечная точка на сервере:
private class ARequestBody
{
public int? Parameter1 { get; set; }
public int? Parameter2 { get; set; }
}
[Post("examplerequest")]
public Response AMethod()
{
var body = this.Bind<ARequestBody>
//Do stuff with data in body
var foo = body.Parameter1;
var bar = body.Parameter2;
return new Response();
}
Запрос к конечной точке:
Method: POST
Path: [server_address_etc]/examplerequest
Body:
{
"Parameter1" : 123,
"Parameter2" : null
}
Если запрос сделан к этой конечной точке, где, например, Parameter1 является нулем в теле запроса, body.Parameter1 по понятным причинам будет иметь значение null после привязки. Однако, если Parameter1 не включен в запрос, body.Parameter1 также будет нулевым.
Вопрос
Есть ли способ определить, включен ли параметр в тело запроса? Если возможно, я хочу иметь возможность различать:
- обнуляемый параметр, включаемый в тело запроса, но со значением null
- , если параметр вообще не включен в тело запроса.