Afficher en anglais

Partage via


XmlAttributeEventArgs Classe

Définition

Fournit des données pour l'événement UnknownAttribute.

C#
public class XmlAttributeEventArgs : EventArgs
Héritage
XmlAttributeEventArgs

Exemples

L’exemple suivant désérialise une classe nommée Group à partir d’un fichier nommé UnknownAttributes.xml. Chaque fois qu’un élément est trouvé dans le fichier qui n’a aucun membre correspondant dans la classe, l’événement UnknownAttribute se produit. Pour essayer l’exemple, collez le code XML suivant dans un fichier nommé UnknownAttributes.xml.

<?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();
    }
}

Remarques

Pour plus d’informations sur la gestion des événements, consultez Vue d’ensemble des événements.

L’événement UnknownAttribute se produit uniquement lorsque vous appelez la Deserialize méthode.

Propriétés

Attr

Obtient un objet qui représente l'attribut XML inconnu.

ExpectedAttributes

Obtient une liste délimitée par des virgules de noms d'attributs XML supposés appartenir à une instance de document XML.

LineNumber

Obtient le numéro de ligne de l'attribut XML inconnu.

LinePosition

Obtient la position sur la ligne de l'attribut XML inconnu.

ObjectBeingDeserialized

Obtient l'objet en cours de désérialisation.

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Produit Versions
.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

Voir aussi