Benutzer mit den meisten Antworten
List(of ..) als Parameter übergeben?

Frage
-
Hallo Zusammen.
Ich erstelle mir eine Liste von meinem Personal -> Dim Personal as new List(of Personal)
Diese Liste möchte ich als Parameter an eine Funktion übergben. Wenn dies dann geschen soll erhalte ich folgenden Fehler:
Fehler beim Serialisieren von Parameter :Personal. Die InnerException-Nachricht war "Der Typ "System.Collections.Generic.List`1[[Mitarbeiter.Personal, Mitarbeiter, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" mit dem Datenvertragsnamen "ArrayOfPersonal:http://schemas.datacontract.org/2004/07/Mitarbeiter" wurde nicht erwartet. Fügen Sie alle statisch nicht bekannten Typen der Liste der bekannten Typen hinzu. Verwenden Sie dazu z. B. das Attribut "KnownTypeAttribute", oder fügen Sie die Typen der an DataContractSerializer übergebenen Liste von bekannten Typen hinzu.". Weitere Details finden Sie unter "InnerException".
Weiß jemand woran das liegt und wie man das Problem behebt oder ob es generell nicht Möglicht ist so eine Liste als Parameter zu übergeben?
Danke für die Hilfe.
grüße
Sonntag, 30. Mai 2010 18:39
Antworten
-
Hallo Peter.
Danke für deine Antwort. Ja es ist eine Funktion die über den WebService aufgerufen wird.
Das Problem war viel Simpler. Ich hab nach mehren Lösungsversuchen einfach mal den Service entfernt und neu hinzugefügt und siehe da es läuft :-).
grüße ThunderBold
- Als Antwort markiert ThunderBold Freitag, 4. Juni 2010 16:49
Freitag, 4. Juni 2010 16:49
Alle Antworten
-
"ThunderBold" schrieb im Newsbeitrag news:b8ae0578-8892-4342-ba23-853ea47a7336...
...
Ich erstelle mir eine Liste von meinem Personal -> Dim Personal as new List(of Personal)
Diese Liste möchte ich als Parameter an eine Funktion übergben. Wenn dies dann geschen soll erhalte ich folgenden Fehler:
Fehler beim Serialisieren von Parameter :Personal. Die InnerException-Nachricht war "Der Typ "System.Collections.Generic.List`1[[Mitarbeiter.Personal, Mitarbeiter, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" mit dem Datenvertragsnamen "ArrayOfPersonal:http://schemas.datacontract.org/2004/07/Mitarbeiter" wurde nicht erwartet. Fügen Sie alle statisch nicht bekannten Typen der Liste der bekannten Typen hinzu. Verwenden Sie dazu z. B. das Attribut "KnownTypeAttribute", oder fügen Sie die Typen der an DataContractSerializer übergebenen Liste von bekannten Typen hinzu.". Weitere Details finden Sie unter "InnerException".
Weiß jemand woran das liegt und wie man das Problem behebt oder ob es generell nicht Möglicht ist so eine Liste als Parameter zu übergeben?
Generell ist das möglich. Unklar bei der Frage ist nur, was für eine Funktion du nutzt. Bei einer Funktion innerhalb einer Anwendung dürfte der Fehler nicht kommen. Wenn die Funktion in einem SAOP-WebService aufgerufen wird, solltest du für die einzelnen Typen ein XMLInclude-Attribut einfügen. Wenn es sich um eine Funktion eines RIA-WebService handelt, solltest du das KwownTypeAttribute für die zu übertragenden Typen anwenden. Ich hoffe, du hast nach Änderungen im Service auch ein Update Service bzw. ServiceReference ausgeführt.
--
Viele GruessePeter
- Als Antwort vorgeschlagen Robert Breitenhofer Donnerstag, 3. Juni 2010 08:47
Montag, 31. Mai 2010 03:51 -
Hallo Peter.
Danke für deine Antwort. Ja es ist eine Funktion die über den WebService aufgerufen wird.
Das Problem war viel Simpler. Ich hab nach mehren Lösungsversuchen einfach mal den Service entfernt und neu hinzugefügt und siehe da es läuft :-).
grüße ThunderBold
- Als Antwort markiert ThunderBold Freitag, 4. Juni 2010 16:49
Freitag, 4. Juni 2010 16:49