Bonsoir,
J'ai un fichier XML suivant:
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <?xml version="1.0" encoding="utf-8" ?> <todo> <item id="0" project="" area="" initiatedDate="" dueDate=""></item> <item id="1" project="" area="" initiatedDate="" dueDate=""></item> <item id="2" project="" area="" initiatedDate="" dueDate=""></item> <item id="3" project="" area="" initiatedDate="" dueDate=""></item> <item id="4" project="" area="" initiatedDate="" dueDate=""></item> <item id="5" project="" area="" initiatedDate="" dueDate=""></item> <item id="6" project="" area="" initiatedDate="" dueDate=""></item> <item id="7" project="" area="" initiatedDate="" dueDate=""></item> <item id="8" project="" area="" initiatedDate="" dueDate=""></item> <item id="9" project="" area="" initiatedDate="" dueDate=""></item> <item id="10" project="" area="" initiatedDate="" dueDate=""></item> <item id="11" project="" area="" initiatedDate="" dueDate=""></item> <item id="12" project="" area="" initiatedDate="" dueDate=""></item> </todo>
Ainsi que le fichier XSD:
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 <?xml version="1.0" encoding="utf-8"?> <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="todo"> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" name="item"> <xs:complexType> <xs:attribute name="id" type="xs:int" use="optional" /> <xs:attribute name="project" type="xs:string" use="optional" /> <xs:attribute name="area" type="xs:string" use="optional" /> <xs:attribute name="initiatedDate" type="xs:dateTime" use="optional" /> <xs:attribute name="dueDate" type="xs:dateTime" use="optional" /> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
J'utilise la fonction suivante pour ajouter une ligne dans mon fichier xml:
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 public static void AddToDoItem(string XMLDataFile, string text, ComboBox project, ComboBox area, DateTime initiatedDate, DateTime dueDate) { XDocument xmlFile = XDocument.Load(@"./../../Data/" + XMLDataFile); XElement item = new XElement("item", new XAttribute(Program.toDosFields[0].ToString(), GetXMLLastID(xmlFile) + 1), new XAttribute(Program.toDosFields[1].ToString(), project.SelectedValue), new XAttribute(Program.toDosFields[2].ToString(), area.SelectedValue), new XAttribute(Program.toDosFields[3].ToString(), initiatedDate), new XAttribute(Program.toDosFields[4].ToString(), dueDate)); item.SetValue(text); MessageBox.Show(item.ToString()); xmlFile.Add(item); }
Le seul problème c'est que lorsque je lance mon programme, il me dit l'erreur suivante:
Pourtant lorsque je regarde ce que je genère mon item, j'ai le code XML suivant:This operation ould create an incorrectly structured document.
ce qui correspond bien à ce qu'il y a dans mon fichier xml :s
Code : Sélectionner tout - Visualiser dans une fenêtre à part <item id="13" project="pif" area="AM" initiatedDate="2010-10-31T00:00:00+02:00" dueDate="2010-11-01T00:00:00+01:00">test</item>
Est-ce que quelqu'un aurait une idée de comment insérer une ligne? Est-ce que cela doit être fait d'une autre manière?
Merci bien pour votre aide et bonne soirée
L.
Partager