0

Ich mache eine Frager-App für die Xamarin iOS iPad App. Wenn jemand die App öffnet, dann zeigt dies die Kategorien an, dann öffnet sich aus den Kategorien Unterkategorien, aus Unterkategorien öffnet sich eine Liste von Fragen. Wenn Fragen geöffnet wird, wird eine Detailseite mit einer Liste von Auswahlmöglichkeiten und ein Textfeld zum Hinzufügen der Antwort der Frage angezeigt.Werte in XML-Attribut/XML-Element speichern Werte der Antworten für den Fragebogen

Jetzt ist die Sache, wenn eine Detailseite für Frage öffnen und die Antwort von dieser bestimmten Frage speichern. Antwort und Auswahl aus der Liste müssen in der XML-Datei für diese Frage gespeichert werden.

Wie kann ich das erreichen?

<?xml version="1.0" encoding="utf-16"?> 
<Categories xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
    <SubCategories> 
    <Question QuestionTitle="I am question101" SubCategories="100" CategoryId="facilityId"> 
     <Checklists_Items Checklist_ItemTitle="title101" Checklist_ItemId="999" Checklist_ItemQuestion="question101" /> 
    </Question> 
    </SubCategories> 
</Categories> 
+0

Verwenden Modelle und Bindungen –

Antwort

0

ich erreicht dies durch folgende Maßnahmen: Machen Sie eine Klassendatei mit allen erforderlichen Eigenschaften, die die Werte sind erforderlich, um zu speichern, setzen Sie dann die Eigenschaften Werte dieser Klasse und serialisiert die Klasse Objekt mit Werten in XML und schreiben Sie diese serialisierte XML-Zeichenfolge in eine XML-Datei.

Unten ist der Beispielcode für Objektklasse.

using System; 
using System.Collections.Generic; 
using System.Xml.Serialization; 

/// <remarks/> 
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")] 
[System.SerializableAttribute()] 
[System.Diagnostics.DebuggerStepThroughAttribute()] 
[System.ComponentModel.DesignerCategoryAttribute("code")] 
[XmlTypeAttribute(AnonymousType = true)] 
//[System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable = false)] 

public partial class QuestionsCollection 
{ 
    private string _Question; 
    private string _Answer; 

    public QuestionsCollection() 
    { 
    } 

    /// <remarks/> 
    [XmlAttributeAttribute()] 
    public string Question 
    { 
     get 
     { 
      return this._Question; 
     } 
     set 
     { 
      this._Question = value; 
     } 
    } 

    /// <remarks/> 
    [XmlArrayItemAttribute("Questions", IsNullable = false)] 
    public string Answer 
    { 
     get 
     { 
      return this._Answer; 
     } 
     set 
     { 
      this._Answer = value; 
     } 
    } 
} 

Code Objektklasse Serialize:

string question = "This is first question?"; 
string answer = "Answer to first question"; 

var path1 = Path.Combine(Directory, _path); 
//Setting Values 
      var c = new QuestionsCollection { Question = question, Answer = answer }; 

//Serialization of Object Class.  
      var s = new XmlSerializer(typeof(QuestionsCollection)); 
      var sb = new StringBuilder(); 

      using (var writer = new StringWriter(sb)) 
      { 
       try 
       { 
        s.Serialize(writer, c); 
//Write Serialized String to file. 
        File.WriteAllText(path1, sb.ToString(), Encoding.UTF8); 

       } 
       catch (Exception e) 
       { 

       } 
      } 
Verwandte Themen