Je désérialise un fichier XML qui provient d'un webservice d'un de nos clients. Le problème est, après avoir créé la classe avec xsd.exe, je désérialise le fichier et obtiens l'habituel "Il y a une erreur dans le document XML (2, 2)." erreur de studio visuel. Ceci, je suppose est la ligne 2, qui pointe vers les déclarations d'espace de noms:C#: Erreur de fichier XML Deserialise (je pense que c'est un problème d'espace de noms - je ne peux rien pour la vie)
Haut de fichier XML:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/1999/XMLSchema" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance">
<soapenv:Body><MXWorkorderOutResp language="EN" xmlns="http://www.mro.com/mx/integration" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Header event="0" operation="Response" rsCount="8" rsStart="0" rsTotal="8">
<SenderID build="127" dbbuild="V600-467" majorversion="6" minorversion="1" type="MAXIMO">MX</SenderID>
<CreationDateTime>2009-05-11T09:48:51+01:00</CreationDateTime>
<RecipientID>SUPPLIER</RecipientID>
<MessageID>12420317323327108</MessageID>
</Header>
<Content>
<MXWORKORDER>
<WORKORDER>
Haut de classe:
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://www.mro.com/mx/integration")]
[System.Xml.Serialization.XmlRootAttribute(Namespace="http://www.mro.com/mx/integration", IsNullable=false)]
public partial class MXWorkorderOutResp {
private MXWorkorderOutRespHeader[] headerField;
private MXWorkorderOutRespContentMXWORKORDERWORKORDER[][][] contentField;
private string languageField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("Header")]
public MXWorkorderOutRespHeader[] Header {
get {
return this.headerField;
}
set {
this.headerField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlArrayItemAttribute("MXWORKORDER", typeof(MXWorkorderOutRespContentMXWORKORDERWORKORDER[]), IsNullable=false)]
[System.Xml.Serialization.XmlArrayItemAttribute("WORKORDER", typeof(MXWorkorderOutRespContentMXWORKORDERWORKORDER), IsNullable=false, NestingLevel=1)]
public MXWorkorderOutRespContentMXWORKORDERWORKORDER[][][] Content {
Je présume qu'il ya une erreur avec le:
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://www.mro.com/mx/integration")]
[System.Xml.Serialization.XmlRootAttribute(Namespace="http://www.mro.com/mx/integration", IsNullable=false)]
partie du XML, mais je n'ai aucune idée de ce qu'il faut changer - ou ce VS veut.
toute aide à tous les gars apprécié, je suis encore assez nouveau pour tout cela et mon patron me respiration vers le bas tout le temps pour obtenir ce travail :(
EDIT: Il y a une exception interne oui ! Désolé les gars!
{"<Envelope xmlns='http://schemas.xmlsoap.org/soap/envelope/'> was not expected."}
Alors, comment puis-je ajouter cette déclaration d'espace de noms à la classe?
Existe-t-il une exception interne? – tpower
Hi tpower, L'exception interne est: {" n'était pas prévu."} Comment ajouter cet espace de noms à la classe alors ça l'attend ?! –
Gareth