Wenn # unter Verwendung von XML-Serialisierung in C, verwende ich Code wie folgt:Verwendung von Generika mit XmlSerializer
public MyObject LoadData()
{
XmlSerializer xmlSerializer = new XmlSerializer(typeof(MyObject));
using (TextReader reader = new StreamReader(settingsFileName))
{
return (MyObject)xmlSerializer.Deserialize(reader);
}
}
(und ähnlicher Code für die Deserialisierung).
Es erfordert Gießen und ist nicht wirklich nett. Gibt es eine Möglichkeit direkt in .NET Framework Generics mit Serialisierung zu verwenden? Das heißt so etwas wie zu schreiben:
public MyObject LoadData()
{
// Generics here.
XmlSerializer<MyObject> xmlSerializer = new XmlSerializer();
using (TextReader reader = new StreamReader(settingsFileName))
{
// No casts nevermore.
return xmlSerializer.Deserialize(reader);
}
}
Ein generisches 'XmlSerializer' wie oben in Ihrem Beispiel gezeigt existiert nicht. Sie müssen Ihren eigenen Wrapper erstellen, wenn Sie diese Funktionalität wünschen. –