J'ai 2 interfaces IA et IB.Comment puis-je sérialiser un objet possédant une interface en tant que propriété?
public interface IA
{
IB InterfaceB { get; set; }
}
public interface IB
{
IA InterfaceA { get; set; }
void SetIA(IA value);
}
Chaque interface fait référence à l'autre.
J'essaie de sérialiser ClassA comme défini ci-dessous.
[Serializable]
public class ClassA : IA
{
public IB InterfaceB { get; set; }
public ClassA()
{
// Call outside function to get Interface B
IB interfaceB = Program.GetInsanceForIB();
// Set IB to have A
interfaceB.SetIA(this);
}
}
[Serializable]
public class ClassB : IB
{
public IA InterfaceA { get; set; }
public void SetIA(IA value)
{
this.InterfaceA = value as ClassA;
}
}
je reçois une erreur lorsque je tente trop sérialisation car les 2 propriétés sont des interfaces. Je veux sérialiser les propriétés.
Comment est-ce que je pourrais contourner ceci?
Je dois avoir des références dans chaque interface à l'autre. Et je dois être capable de sérialiser la classe d'avant en arrière.
J'ai corrigé les bugs et il était capable d'aller et venir. –
Oui. Il est facile d'accéder aux erreurs de copier-coller. Glad cela a aidé. –