Pouvez-vous donner plus de contexte sur la question de savoir quand cela se produit et avec quel sérialiseur? La plupart des serializers ont la capacité d'ignorer certains membres - NonSerializedAttribute
pour BinaryFormatter
, XmlIgnoreAttribute
pour XmlSerializer
, etc.
Avoir une instance PropertyDescriptor
dans votre classe signifie généralement que votre classe agit comme un sac de propriété; Dans ce cas, vous devrez peut-être effectuer une sérialisation personnalisée (ISerializable
/IXmlSerializable
). Si le champ est présent pour une autre raison, marquez-le pour qu'il soit ignoré. Ce problème (ou des symptômes similaires) est également très fréquent lorsque vous avez un événement (tel qu'un événement de notification de modification/INotifyPropertyChanged
) auquel l'interface utilisateur est connectée (liaison de données); Dans ce cas, vous devez marquer le champ de support comme non sérialisé. Je ne sais pas VB, mais avec C# vous pouvez le faire avec des « événements comme le terrain », comme ceci:
[field: NonSerialized]
public event EventHandler BarChanged;
Il s'est avéré que c'était un problème avec la liaison de données. J'ai été capable de l'éliminer. Merci pour l'aide. –