DataContractSerializer.IsStartObject Método

Definición

Determina si el lector se coloca en un objeto que se puede deserializar.

Sobrecargas

IsStartObject(XmlReader)

Determina si XmlReader se coloca en un objeto que se puede deserializar.

IsStartObject(XmlDictionaryReader)

Determina si XmlDictionaryReader se coloca en un objeto que se puede deserializar.

IsStartObject(XmlReader)

Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs

Determina si XmlReader se coloca en un objeto que se puede deserializar.

C#
public override bool IsStartObject (System.Xml.XmlReader reader);

Parámetros

reader
XmlReader

XmlReader utilizado para leer la secuencia XML.

Devoluciones

Es true si el lector está situado en el elemento de inicio de la secuencia que se leerá; en caso contrario, false.

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 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
UWP 10.0

IsStartObject(XmlDictionaryReader)

Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs

Determina si XmlDictionaryReader se coloca en un objeto que se puede deserializar.

C#
public override bool IsStartObject (System.Xml.XmlDictionaryReader reader);

Parámetros

reader
XmlDictionaryReader

XmlDictionaryReader que se usa para leer la secuencia XML.

Devoluciones

Es true si el lector está situado en el elemento de inicio de la secuencia que se leerá; en caso contrario, false.

Ejemplos

El ejemplo siguiente utiliza la propiedad IsStartObject para determinar si se ha encontrado el inicio de los datos.

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

Comentarios

IsStartObject determina si puede leer un objeto comprobando que se coloca en un elemento XML. También examina el nombre y el espacio de nombres del elemento XML donde el lector se coloca y compara los valores con el nombre y el espacio de nombres esperados. El nombre y el espacio de nombres esperados se pueden establecer con lo siguiente: el nombre y el espacio de nombres de contrato de datos del tipo pasado al constructor o los valores rootName y rootNamespace pasados al constructor (si está presente).

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 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
UWP 10.0