Hallo Forum,
ich habe mal wieder ein Problem mit Enumerationen. In meiner Klasse gibt es eine Enumeration mit folgendem Aufbau:
public enum ExperienceLevel
{
beginner=1,
advanced=2,
professional=3,
}
Die Klasse wird via WebService übergeben. Anschließend erhalte ich:
System.InvalidOperationException: Instanzvalisierungsfehler: '0' ist kein gültiger Wert für MyProject.Enums.ExperienceLevel.
Ich habe darauf hin mal die Werte mit 0 beginnend erstellt. So läuft es. Da ich die Werte nicht einfach verändern darf habe ich nun ein Problem. Wie kann ich es nun hinbekommen, das ich trotzdem mit 1 beginnen kann?
Nach langem probieren komme ich nicht klar. Mein Enum sieht nun so aus, aber die Fehlermeldung bleibt die gleiche.
public enum ExperienceLevel
{
[System.Xml.Serialization.XmlEnum("Beginner")]
beginner=1,
[System.Xml.Serialization.XmlEnum("Advanced")]
advanced=2,
[System.Xml.Serialization.XmlEnum("Professional")]
professional=3,
}
Hallo,
Gibt nicht "Beginner" usw. beim XmlEnumAttribut an, sondern 1,2,3.
Wenn das auch nicht hilft dann:
Da du einen Webservice hast: kommt der Fehler beim Client oder Server?
Wenns beim Client kommt schau dir mit dem Browser an ober der WS korrekt aufgerufen werden kann. Schau dir auch mit zB Fiddler an ob die Daten korrekt übertragen werden (also mit 1,2,...).
mfG Gü
Der Fehler kommt vom WinForm Client. Wie kann ich mit fiddler2 die Verbindung überwachen?
Hallo,
hast du das XmlEnum mit den Zahlen probiert?
Bzgl. Fiddler google mal -> findet sich genug.
mfG Gü