J'ai vu de nombreuses façons de sérialiser des objets en C# que je ne suis pas sûr de savoir lequel utiliser et quand.Quel est le moyen privilégié pour implémenter des classes sérialisables en C#
Dans la situation actuelle, je sérialisation pour l'exposition via WCF, donc je suppose que l'attribut [DataContract] est la voie à suivre.
Actuellement, je lis dans du code XML, puis j'expose l'objet résultant via WCF. Je désérialise donc XML pour lequel je n'ai pas accès aux classes d'origine (donc je reconstruis la classe et je peux mettre en œuvre la sérialisation comme je le souhaite). Ensuite, il doit être sérialisable pour la WCF.
Mais si [DataContract] est bon pour ce cas, pourquoi ne l'utiliserais-je pas tout le temps au lieu de ISerializable, ou de l'attribut [Serializable]?
Donc, un peu de deux questions en une, ce qui à utiliser pour ce problème, et pourquoi existe-t-il différentes façons de sérialiser.