Posso avere un metodo WebAPIPuoi pubblicare un oggetto anonimo come json in un metodo webapi e abbinare le proprietà dell'oggetto json ai parametri della chiamata webapi?
[Route("someroute")]
public void SomeMethod(string variable1, int variable2, Guid variable3)
{
//... Code here
}
semplice JSON
var jsonvariable = new {
variable1:"somestring",
variable2:3,
variable3: {9E57402D-8EF8-45DE-B981-B8EC201D3D8E}
}
Poi fare il palo
HttpClient client = new HttpClient { BaseAddress = new Uri(ConfigurationManager.AppSettings["SomeURL"]) };
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.PostAsJsonAsync("someroute", jsonvariable).Result
Venendo da javascript che posso fare qualcosa di simile e risolve le singole proprietà ma non riesco a farlo con una chiamata C#
var postData = {
appUniqueId: appUniqueId
};
$http
.post('someurl', postData)
.success(function(response) {
defer.resolve(response.data);
});
webapi method
SomeWebMethod(Guid appUniqueId) <-- same name as in postdata
Per prima cosa, se si suppone che il codice jsonvariabile sia C#, la sintassi è errata. Mostraci il codice esatto che stai cercando di utilizzare e i risultati che ottieni. –
Siamo spiacenti. Ho dimenticato la parola chiave "nuova" su – DRobertE
Sono teorico, questo dovrebbe essere possibile. È probabile che ciò causi un errore per te nell'intestazione mancante o nella richiesta non valida. Suggerirei di attivare Fiddler, inoltrare la richiesta in entrambi i modi e confrontare le richieste non elaborate. Questo dovrebbe aiutarti a iniziare. –