| Giuseppe Scarpiello |
Errore durante la generazione del documento XML
Ciao a tutti, ho un problema nel creare un web service che espone dei dati.
Inizialmente avevo optato per restituire in dataset, ma ho visto che produce l'xsd e un documento xml con i tag e i valori di quello che estraggo dal db e non mi è sembrata una soluzione ottimale. Ho provato a restituire un iList con una classe che ho creato ma mi restituisce questo errore System.InvalidOperationException: Errore durante la generazione del documento XML. ---> System.InvalidOperationException: Tipo MarcoPolo2.language imprevisto. Utilizzare l'attributo XmlInclude o SoapInclude per specificare tipi non conosciuti a livello statico. in System.Xml.Serialization.XmlSerializationWriter.WriteTypedPrimitive(String name, String ns, Object o, Boolean xsiType) in Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write1_Object(String n, String ns, Object o, Boolean isNullable, Boolean needType) in Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write5_ArrayOfAnyType(Object o) in Microsoft.Xml.Serialization.GeneratedAssembly.IListSerializer1.Serialize(Object objectToSerialize, XmlSerializationWriter writer) in System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter, Object o, XmlSerializerNamespaces namespaces, String encodingStyle, String id) --- Fine dell'analisi dello stack dell'eccezione interna --- in System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter, Object o, XmlSerializerNamespaces namespaces, String encodingStyle, String id) in System.Xml.Serialization.XmlSerializer.Serialize(TextWriter textWriter, Object o, XmlSerializerNamespaces namespaces) in System.Xml.Serialization.XmlSerializer.Serialize(TextWriter textWriter, Object o) in System.Web.Services.Protocols.XmlReturnWriter.Write(HttpResponse response, Stream outputStream, Object returnValue) in System.Web.Services.Protocols.HttpServerProtocol.WriteReturns(Object[] returnValues, Stream outputStream) in System.Web.Services.Protocols.WebServiceHandler.WriteReturns(Object[] returnValues) in System.Web.Services.Protocols.WebServiceHandler.Invoke() Ho provato anche a restituire un array di Object ma mi restituisce lo stesso errore. Ho provato a serializzare la mia classe, ma l'errore è sempre lo stesso. cosa devo fare per poter far funzionare il mio webmethod? grazie a tutti |
| Roberto Messora |
Re: Errore durante la generazione del documento XML
così a naso da quello che scrivi sembra che tu debba istruire il serializzatore su come può serializzare la proprietà che non riconosce.
di che tipo è? Saluti |
| Giuseppe Scarpiello |
Re: Errore durante la generazione del documento XML
in realtà dovevo semplicemente creare una classe con una classe derivata e aggiungere xmlinclude e soap include alla classe padre.
Poi è andato tutto bene e sono riuscito a resistuire un array di classi ciao |