Impossible d'ajouter du corps à l'aide RestSharp RestRequest énumérations

StackOverflow https://stackoverflow.com/questions/3865182

  •  28-09-2019
  •  | 
  •  

Question

J'utilise RestSharp ASP projet .NET MVC 2. Essayer de créer RestRequest (à l'aide de la méthode POST) et ajoutez deux valeurs ENUM (mon type ENUM - OrderStatusFlags) au corps de la demande - en utilisant la construction en RestSharp XmlSerializer:

var request = new RestRequest("orders/{vendorID}/{number}", Method.POST);
request.AddBody(previousOrderStatus);
request.AddBody(newOrderStatus);

Mais après avoir appelé méthode ADDBODY dans les paramètres de demande ne peut voir que vide mais aucune valeur. Et tout en appelant la méthode d'action MVC une erreur se produit:

Le dictionnaire des paramètres contient une entrée nulle pour le paramètre 'previousStatus' de type non-nullables 'OrderStatusFlags' pour la méthode 'RestResponse PostOrderStatus (Int32, System.String, OrderStatusFlags, OrderStatusFlags)' dans 'OrdersResourceEndpoint. Un paramètre facultatif doit être un type de référence, un type nullable, ou être déclaré comme un paramètre facultatif. Nom du paramètre: paramètres

regard Enum comme ceci:

public enum OrderStatusFlags : long
{
    Pending,
    Confirmed,
    ...
}

personne qui survenaient une situation similaire?

Était-ce utile?

La solution

A problèmes couple ici. Tout d'abord, vous ne pouvez appeler AddBody() une fois ou le dernier appel prioritaire. AddBody() est uniquement pour l'envoi XML en tant que corps de la requête. Quel est le schéma XML requis que vous devez envoyer à cette URL? Pouvez-vous envoyer du XML exemple que vous essayez de générer?

Je pense que plus vous voulez utiliser AddParameter() pour ajouter des paramètres POST puisque c'est beaucoup plus fréquent que les organismes de demande XML.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top