Ho una classe in un servizio WCF, chiamiamolo A. A è un contratto dati, che contiene come uno dei suoi DataMembers una raccolta di un altro oggetto personalizzato B. Per evitare problemi riferimento null sul lato client, ho istanziare le BList nel costruttore in questo modo:Devo esporre un costruttore in un DataContract WCF perché funzioni durante l'istanziazione degli oggetti sul client?
[DataContract]
public class A
{
[DataMember]
public String name { get; set; }
[DataMember]
public List<B> BList {get; set; }
public A()
{
BList = new List<B>();
}
}
mio problema è che sul client, questa esemplificazione non accade e BList appare come null dopo un oggetto di A viene creato sul client. Immagino che il costruttore non appaia sul client. Quindi, devo rendere il costruttore un contratto operativo esplicito? Se così fosse, renderebbe le cose interne visibili al cliente che non dovrebbero vedere, giusto? Come posso assicurarmi che questa istanziazione avvenga sul client?
Grazie, e scusa se questa sembra una domanda stupida.
Grazie. Questo probabilmente funzionerà, ma graverebbe il client facendoli chiamare un metodo web semplicemente per istanziare un oggetto. –