Wie verwende ich Aufzählungen mit XML-RPC und C #?
-
11-07-2019 - |
Frage
Ich bin mit dem Cook-Computing XMLRPC Rahmen in C #. Ich rufe eine Remote-Funktion, die einen int erwartet. Ich möchte stattdessen eine Aufzählung im Client-Code verwenden, der nur die Funktion mit den Ziffern Aufruf in den Funktionsparametern hartcodiert.
kompiliert Der Code erfolgreich, aber während eines XmlRpcUnsupportedTypeException testen, Wurf. Die Meldung besagt, dass meine Aufzählung kann nicht in einen XML-RPC Typ zugeordnet werden. Die Enumeration ist wie folgt:
public enum Codes : int
{
Installed = 903,
}
Ich habe das Gefühl, es ist etwas einfach ich bin mit Blick auf, kann aber nicht meinen Finger auf sie setzen, so bin ich hier mein Bat-Signal in die Wolken scheint!
Lösung
explizites Casting versucht? (Int) installiert
MSDN:
Der zugrunde liegende Typ gibt an, wie viel Speicherung für jeden zugewiesenen enumerator. Allerdings ist eine explizite Umwandlung notwendig ist, von Aufzählungstyp zu konvertieren zu einem integralen Typ. Zum Beispiel kann die folgende Anweisung weist die Enumerator Sun auf eine Variable von der Typ int durch eine Besetzung mit konvertieren von ENUM in int:
int x = (int) Days.Sun;
Andere Tipps
Sie müssen explizit in einem int Stimme:
int code = Codes.Installed; // doesn't work.
int code = (int) Codes.Installed; // works.