Ich muss einen Webdienst implementieren, der eine Liste von Werten freigibt (Ganzzahlen, benutzerdefinierte Klassen usw.). Meine Arbeitslösung gibt eine List<T>
zurück, und laut FxCop ist es besser, eine Collection<T>
oder ReadOnlyCollection<T>
zurückzugeben.Die beste Art, die Liste <T> zu verwenden und die Sammlung freizugeben <T>
Wenn ich ein ReadOnlyCollection<T>
zurückzukehren, die Webdienst zeigt einen Fehler wie:
XML serialisierbar sein, Typen, die von
ICollection
erben müssen eine Implementierung vonAdd(System.Int32)
auf allen Ebenen ihrer Vererbungshierarchie haben.System.Collections.ObjectModel.ReadOnlyCollection
1
[[System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]
implementiertAdd(System.Int32)
nicht.
Was ist Ihre Lieblingsmethode, intern List<T>
zu verwenden und eine Collection<T>
freizulegen? (unter Verwendung von C# und vorzugsweise nur Framework 2.0)
Vielen Dank für Ihre Antwort und für die Details über die Sammlung als eine echte Wrapper, ich habe nichts darüber vorher gefunden. – alexandrul