Sto cercando di utilizzare RestSharp per utilizzare un servizio web. Finora è andato tutto molto bene (saluti a John Sheehan ea tutti i collaboratori!) Ma mi sono imbattuto in un intoppo. Diciamo che voglio inserire XML nel corpo della mia RestRequest nella sua forma già serializzata (cioè, come una stringa). C'è un modo semplice per farlo? Sembra che la funzione .AddBody () conduca la serializzazione dietro le quinte, quindi la mia stringa viene trasformata in <String />
.
Qualsiasi aiuto è molto apprezzato!
EDIT: è stato richiesto un campione del mio codice corrente. Vedi sotto --
private T ExecuteRequest<T>(string resource,
RestSharp.Method httpMethod,
IEnumerable<Parameter> parameters = null,
string body = null) where T : new()
{
RestClient client = new RestClient(this.BaseURL);
RestRequest req = new RestRequest(resource, httpMethod);
// Add all parameters (and body, if applicable) to the request
req.AddParameter("api_key", this.APIKey);
if (parameters != null)
{
foreach (Parameter p in parameters) req.AddParameter(p);
}
if (!string.IsNullOrEmpty(body)) req.AddBody(body); // <-- ISSUE HERE
RestResponse<T> resp = client.Execute<T>(req);
return resp.Data;
}