Auf Englisch lesen

Freigeben über


XmlAttributeEventArgs Klasse

Definition

Stellt Daten für das UnknownAttribute-Ereignis bereit.

C#
public class XmlAttributeEventArgs : EventArgs
Vererbung
XmlAttributeEventArgs

Beispiele

Im folgenden Beispiel wird eine Klasse namens Group aus einer Datei namens UnknownAttributes.xml deserialisiert. Wenn in der Datei ein Element gefunden wird, das kein entsprechendes Element in der -Klasse enthält, tritt das UnknownAttribute -Ereignis auf. Fügen Sie zum Probieren des Beispiels den folgenden XML-Code in eine Datei mit dem Namen UnknownAttributes.xml ein.

<?xml version="1.0" encoding="utf-8"?>  
<Group xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" GroupType = 'Technical' GroupNumber = '42' GroupBase = 'Red'>  
  <GroupName>MyGroup</GroupName>  
</Group>  
C#
using System;
using System.IO;
using System.Xml.Serialization;
using System.Xml;
using System.Xml.Schema;

public class Group{
   public string GroupName;
}

public class Test{
   static void Main(){
      Test t = new Test();
      // Deserialize the file containing unknown elements.
      t.DeserializeObject("UnknownAttributes.xml");
   }
   private void Serializer_UnknownAttribute(object sender, XmlAttributeEventArgs e){
      Console.WriteLine("Unknown Attribute");
      Console.WriteLine("\t" + e.Attr.Name + " " + e.Attr.InnerXml);
      Console.WriteLine("\t LineNumber: " + e.LineNumber);
      Console.WriteLine("\t LinePosition: " + e.LinePosition);

      Group x  = (Group) e.ObjectBeingDeserialized;
      Console.WriteLine (x.GroupName);
      Console.WriteLine (sender.ToString());
   }
   private void DeserializeObject(string filename){
      XmlSerializer ser = new XmlSerializer(typeof(Group));
      // Add a delegate to handle unknown element events.
      ser.UnknownAttribute+=new XmlAttributeEventHandler(Serializer_UnknownAttribute);
      // A FileStream is needed to read the XML document.
     FileStream fs = new FileStream(filename, FileMode.Open);
     Group g = (Group) ser.Deserialize(fs);
     fs.Close();
    }
}

Hinweise

Weitere Informationen zum Behandeln von Ereignissen finden Sie unter Übersicht über Ereignisse.

Das UnknownAttribute Ereignis tritt nur auf, wenn Sie die Deserialize -Methode aufrufen.

Eigenschaften

Attr

Ruft ein Objekt ab, das das unbekannte XML-Attribut darstellt.

ExpectedAttributes

Ruft eine durch Trennzeichen getrennte Liste von XML-Attributnamen ab, von denen erwartet wird, dass sie in einer XML-Dokumentinstanz vorhanden sind.

LineNumber

Ruft die Zeilennummer des unbekannten XML-Attributs ab.

LinePosition

Ruft die Position des unbekannten XML-Attributs in der Zeile ab.

ObjectBeingDeserialized

Ruft das Objekt ab, das gerade deserialisiert wird.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Produkt Versionen
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Weitere Informationen