DataContractSerializer.IsStartObject Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Détermine si le lecteur est positionné sur un objet pouvant être désérialisé.
Surcharges
IsStartObject(XmlReader) |
Détermine si la classe XmlReader est positionnée sur un objet pouvant être désérialisé. |
IsStartObject(XmlDictionaryReader) |
Détermine si la classe XmlDictionaryReader est positionnée sur un objet pouvant être désérialisé. |
IsStartObject(XmlReader)
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
Détermine si la classe XmlReader est positionnée sur un objet pouvant être désérialisé.
public:
override bool IsStartObject(System::Xml::XmlReader ^ reader);
public override bool IsStartObject (System.Xml.XmlReader reader);
override this.IsStartObject : System.Xml.XmlReader -> bool
Public Overrides Function IsStartObject (reader As XmlReader) As Boolean
Paramètres
Retours
true
si le lecteur est sur l'élément de départ du flux à lire ; sinon, false
.
S’applique à
IsStartObject(XmlDictionaryReader)
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
- Source:
- DataContractSerializer.cs
Détermine si la classe XmlDictionaryReader est positionnée sur un objet pouvant être désérialisé.
public:
override bool IsStartObject(System::Xml::XmlDictionaryReader ^ reader);
public override bool IsStartObject (System.Xml.XmlDictionaryReader reader);
override this.IsStartObject : System.Xml.XmlDictionaryReader -> bool
Public Overrides Function IsStartObject (reader As XmlDictionaryReader) As Boolean
Paramètres
- reader
- XmlDictionaryReader
XmlDictionaryReader utilisé pour lire le flux XML.
Retours
true
si le lecteur est sur l'élément de départ du flux à lire ; sinon, false
.
Exemples
L'exemple suivant utilise la propriété IsStartObject pour déterminer si le début des données a été trouvé.
public static void ReadObjectData(string path)
{
// Create the reader.
FileStream fs = new FileStream(path, FileMode.Open);
XmlDictionaryReader reader =
XmlDictionaryReader.CreateTextReader(fs, new XmlDictionaryReaderQuotas());
// Create the DataContractSerializer specifying the type,
// root and namespace to use. The root value corresponds
// to the DataContract.Name value, and the namespace value
// corresponds to the DataContract.Namespace value.
DataContractSerializer ser =
new DataContractSerializer(typeof(Person),
"Customer", @"http://www.contoso.com");
// Test if the serializer is on the start of the
// object data. If so, read the data and write it
// to the console.
while (reader.Read())
{
if (ser.IsStartObject(reader))
{
Console.WriteLine("Found the element");
Person p = (Person)ser.ReadObject(reader);
Console.WriteLine("{0} {1} id:{2}",
p.FirstName, p.LastName, p.ID);
}
Console.WriteLine(reader.Name);
break;
}
fs.Flush();
fs.Close();
}
Public Shared Sub ReadObjectData(ByVal path As String)
' Create the reader.
Dim fs As New FileStream(path, FileMode.Open)
Dim reader As XmlDictionaryReader = _
XmlDictionaryReader.CreateTextReader(fs, New XmlDictionaryReaderQuotas())
' Create the DataContractSerializer specifying the type,
' root and namespace to use. The root value corresponds
' to the DataContract.Name value, and the namespace value
' corresponds to the DataContract.Namespace value.
Dim ser As New DataContractSerializer(GetType(Person), _
"Customer", "http://www.contoso.com")
' Test if the serializer is on the start of the
' object data. If so, read the data and write it
' to the console.
While reader.Read()
If ser.IsStartObject(reader) Then
Console.WriteLine("Found the element")
Dim p As Person = CType(ser.ReadObject(reader), Person)
Console.WriteLine("{0} {1} id:{2}", p.FirstName, p.LastName, p.ID)
End If
Console.WriteLine(reader.Name)
End While
fs.Flush()
fs.Close()
End Sub
Remarques
IsStartObject détermine s'il peut lire un objet en vérifiant s'il est positionné sur un élément XML. Il examine également le nom et espace de noms de l'élément XML où est positionné le lecteur et compare les valeurs aux nom et espace de noms attendus. Le nom et l'espace de noms attendus peuvent être définis à l'aide des éléments suivants : le nom et l'espace de noms du type passé au constructeur ou les valeurs rootName
et rootNamespace
passées au constructeur (s'il est présent).