Innanzi tutto mi scuso xke in realtà ho cominciato questa discussione in un altro thread dal titolo "Web services ed interfaccie" ma andando piu a fondo sul problema mi sono reso conto che la natura della questione è ben diversa e quindi aprire un nuovo thread mi sembra opportuno....
Il problema:
public class Class2
{
public Class2()
{
ClassList = new ListOfClass1();
}
public string Codice { get; set; }
//Notare questa proprietà
public IListOfClass1 ClassList { get; set; }
}
questa (qui su) è la classe che vorrei serializzare.
poi
public interface Iclass1
{
string Descrizione {get;set;}
}
public interface IListOfClass1
{
}
public class Class1:Iclass1
{
public string Descrizione
{
get;
set;
}
}
public class ListOfClass1 : List<Iclass1> , IListOfClass1
{
public ListOfClass1()
{
for (int I=0; I < 10; I++)
{
this.Add(new Class1 { Descrizione = "Ciao" + Convert.ToString(I) });
}
}
}
queste sono 2 interfaccie con le loro relative implementazioni..
Come vedete Nella "Class2" (la prima che ho postato) c'è una proprietà del tipo "IListOfClass1" (Poco piu su di questo paragrafo).
Il problema è che l'xml serializer non riesce a serializzare "Class2" perchè tra i suoi membri c'è una proprietà di tipo interfaccia..
Come risolvere il problema e serializzare la classe "Class2" senza rimuovere la Proprietà incriminata??