1
Beim Versuch, eine generische Methode zum Aufrufen von REST-Endpunkten mithilfe von RestSharp zu erstellen, wird nur der Inhalt dynamisch zurückgegeben.Dynamisch wiederkehrende serialisierte RestSharp-Ergebnisse
Response.Data ist null und Response.Content ist immer eine Zeichenfolge. Ich möchte, dass der Rückgabewert mindestens anonym ist.
public T Call<T>(string url, Method method = Method.GET, ResponseType type = ResponseType.JSON, params Parameter[] parameters)
{
var request = new RestRequest(url, method);
switch (type)
{
case ResponseType.JSON:
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Accept", "application/json");
request.RequestFormat = DataFormat.Json;
break;
case ResponseType.XML:
request.AddHeader("Content-Type", "application/xml");
request.AddHeader("Accept", "application/xml");
request.RequestFormat = DataFormat.Xml;
break;
}
foreach (var parameter in parameters)
request.AddParameter(parameter);
var response = _client.Execute<dynamic>(request);
if (!string.IsNullOrEmpty(response.ErrorMessage) || response.ErrorException != null)
throw new System.Exception(response.ErrorMessage, response.ErrorException);
return response.Data;
}
Wird dynamisch nicht einen anonymen Typ wie schaffen, in dem Objekt nicht? – user3953989
Meine schlechte, aktualisierte Antwort dort –
sollte dies funktionieren, aber denken Sie daran, wo T: new() an das Ende der Methodensignatur hinzuzufügen. – Dan