XmlIgnoreAttribute Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Instruuje metodę Serialize(TextWriter, Object)XmlSerializer, aby nie serializować pola publicznego lub publicznej wartości właściwości odczytu/zapisu.
public ref class XmlIgnoreAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property | System.AttributeTargets.ReturnValue)]
public class XmlIgnoreAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property | System.AttributeTargets.ReturnValue)>]
type XmlIgnoreAttribute = class
inherit Attribute
Public Class XmlIgnoreAttribute
Inherits Attribute
- Dziedziczenie
- Atrybuty
Przykłady
W poniższym przykładzie przedstawiono klasę o nazwie Group, która zawiera pole o nazwie Comment. W przykładzie przypisano XmlIgnoreAttribute element do pola, co powoduje zignorowanie XmlSerializer pola podczas serializacji lub deserializacji wystąpienia klasy.
public class Group
{
// The XmlSerializer ignores this field.
[XmlIgnore]
public string Comment;
// The XmlSerializer serializes this field.
public string GroupName;
}
Public Class Group
' the XmlSerializer ignores this field.
<XmlIgnore()> Public Comment As String
' The XmlSerializer serializes this field.
Public GroupName As String
End Class
Uwagi
Element XmlIgnoreAttribute należy do rodziny atrybutów, które steruje serializami XmlSerializer lub deserializuje obiekt. Jeśli zastosujesz element XmlIgnoreAttribute do dowolnego elementu członkowskiego klasy, XmlSerializer element członkowski zostanie zignorowany podczas serializacji lub deserializacji wystąpienia klasy. Aby uzyskać pełną listę podobnych atrybutów, zobacz Atrybuty kontrolujące serializacji XML.
Można zastąpić zachowanie spowodowane przez XmlIgnoreAttribute utworzenie XmlAttributes obiektu i ustawienie jego XmlIgnore właściwości na false. Musisz AddXmlAttributes obiekt do wystąpienia XmlAttributeOverrides klasy. Na koniec należy użyć XmlAttributeOverrides obiektu , aby utworzyć wystąpienie XmlSerializer klasy przed wywołaniem Serialize metod lub Deserialize .
Narzędzie definicji schematu XML (Xsd.exe) od czasu do czasu generuje XmlIgnoreAttribute element podczas tworzenia klas na podstawie pliku schematu (xsd). Takie zachowanie występuje, ponieważ nie można ustawić typów wartości na null, ale mogą to być wszystkie typy danych XML. W związku z tym narzędzie tworzy dwa pola, gdy napotka typ XML, który jest mapowany na typ wartości: jeden do przechowywania wartości, a drugie specjalne pole, które ma formę fieldnameSpecified, gdzie fieldname element jest zastępowany przez nazwę pola lub właściwości. Należy jednak zauważyć, że to pole specjalne jest generowane tylko wtedy, gdy schemat określa, że element nie ma minimalnego wystąpienia (minOccurs = "0") i że element nie ma wartości domyślnej. Ustawia XmlSerializer i sprawdza to pole specjalne, aby określić, czy wartość została ustawiona dla pola lub właściwości. Ponieważ pole specjalne nie może być serializowane, narzędzie stosuje XmlIgnoreAttribute je do niego.
Aby uzyskać więcej informacji na temat używania atrybutów, zobacz Atrybuty.
Uwaga / Notatka
Możesz użyć słowa XmlIgnore w kodzie zamiast dłuższego XmlIgnoreAttribute.
Konstruktory
| Nazwa | Opis |
|---|---|
| XmlIgnoreAttribute() |
Inicjuje nowe wystąpienie klasy XmlIgnoreAttribute. |
Właściwości
| Nazwa | Opis |
|---|---|
| TypeId |
Po zaimplementowaniu w klasie pochodnej pobiera unikatowy identyfikator dla tego Attribute. (Odziedziczone po Attribute) |
Metody
| Nazwa | Opis |
|---|---|
| Equals(Object) |
Zwraca wartość wskazującą, czy to wystąpienie jest równe określonemu obiektowi. (Odziedziczone po Attribute) |
| GetHashCode() |
Zwraca kod skrótu dla tego wystąpienia. (Odziedziczone po Attribute) |
| GetType() |
Pobiera Type bieżącego wystąpienia. (Odziedziczone po Object) |
| IsDefaultAttribute() |
Po zastąpieniu w klasie pochodnej wskazuje, czy wartość tego wystąpienia jest wartością domyślną dla klasy pochodnej. (Odziedziczone po Attribute) |
| Match(Object) |
Po zastąpieniu w klasie pochodnej zwraca wartość wskazującą, czy to wystąpienie jest równe określonemu obiektowi. (Odziedziczone po Attribute) |
| MemberwiseClone() |
Tworzy płytkią kopię bieżącego Object. (Odziedziczone po Object) |
| ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
Jawne implementacje interfejsu
| Nazwa | Opis |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłania. (Odziedziczone po Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Pobiera informacje o typie obiektu, którego można użyć do uzyskania informacji o typie dla interfejsu. (Odziedziczone po Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Pobiera informację o liczbie typów interfejsów, jakie zawiera obiekt (0 lub 1). (Odziedziczone po Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Zapewnia dostęp do właściwości i metod uwidocznionych przez obiekt. (Odziedziczone po Attribute) |