Sto provando a serializzare un NameValueCollection su WCF. Continuo a ricevere eccezioni che mi dicono di aggiungere un tipo dopo l'altro. Dopo l'aggiunta di loro, ho finalmenteProblema di serializzazione WCF con NameValueCollection
Tipo 'System.Object []' non può essere aggiunto alla lista dei tipi conosciuti dal un altro tipo 'System.Collections.ArrayList' con lo stesso nome del contratto di dati 'http://schemas.microsoft.com/2003/10/Serialization/Arrays:ArrayOfanyType' è già presente.
Il contratto ora assomiglia a questo:
[KnownType(typeof(NameValueCollection))]
[KnownType(typeof(CaseInsensitiveHashCodeProvider))]
[KnownType(typeof(CaseInsensitiveComparer))]
[KnownType(typeof(string[]))]
[KnownType(typeof(Object[]))]
[KnownType(typeof(ArrayList))]
[DataContract]
public class MyClassDataBase
{
[DataMember]
public NameValueCollection DataCollection = new NameValueCollection();
}
Io davvero non so cosa fare per essere in grado di serializzare la mia NameValueColletion.
Un'altra cosa strana è che il compilatore avverte che CaseInsensitiveHashCodeProvider è deprecato.
NameValueCollection è debolmente digitato? – ironsam
Ho usato il termine "tipo debole", non "debolmente digitato". Con questo intendo includere 'NameValueCollection' nell'insieme di tipi di raccolta presentati prima dei generici. –
Quando uso i dizionari in WCF, non si esegue la de-serializzazione molto bene. O qualcosa è spento quando lo deserializzo. – micahhoover