У меня есть служба wcf, и я хочу проверить данные проводки. Но параметр моей функции никогда не получает никаких значений.WCF Метод WebInvoke POST
[OperationContract]
[WebInvoke(UriTemplate = "TestPost", Method = "POST",
ResponseFormat = WebMessageFormat.Json,
RequestFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.WrappedRequest)]
int Test(string value);
public int Test(string value) //Value stays null
{
return 0;
}
Запрос JSON Я посылаю, построить с помощью Fiddler2
http://localhost:49633/Service1.svc/TestPost
User-Agent: Fiddler
Host: localhost:49633
Content-Length: 42
Content-type: application/json
{"value":{"name":"value","name1":"value"}}
Я хочу, чтобы параметр, который содержит строку JSON, поэтому в основном я создаю запрос JSON, который содержит объект JSON, потому что я хочу для десериализации объекта JSON позже в один из моих пользовательских объектов. Любые идеи, почему параметр value остается равным нулю?
Благодаря
Параметр является строкой, поэтому его значение должно быть строкой тоже. Попробуйте передать «{» значение »:« {\ "name \": \ "value \", \ "name1 \": \ "value \"} "}' вместо этого. Хотя я удивлен, что служба не дает вам ошибку вместо нулевого аргумента. – shambulator
Можете ли вы попытаться удалить BodyStyle до значения по умолчанию, которое WrappedRequest – Rajesh