Udostępnij za pośrednictwem


DataContractSerializer.IsStartObject Metoda

Definicja

Określa, czy czytnik jest umieszczony na obiekcie, który można deserializować.

Przeciążenia

IsStartObject(XmlReader)

Określa, czy XmlReader obiekt jest umieszczony na obiekcie, który można deserializować.

IsStartObject(XmlDictionaryReader)

Określa, czy XmlDictionaryReader obiekt jest umieszczony na obiekcie, który można deserializować.

IsStartObject(XmlReader)

Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs

Określa, czy XmlReader obiekt jest umieszczony na obiekcie, który można deserializować.

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

Parametry

reader
XmlReader

Używany XmlReader do odczytywania strumienia XML.

Zwraca

true jeśli czytnik znajduje się na początku elementu strumienia do odczytania; w przeciwnym razie , false.

Dotyczy

IsStartObject(XmlDictionaryReader)

Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs
Źródło:
DataContractSerializer.cs

Określa, czy XmlDictionaryReader obiekt jest umieszczony na obiekcie, który można deserializować.

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

Parametry

reader
XmlDictionaryReader

Element XmlDictionaryReader używany do odczytywania strumienia XML.

Zwraca

true jeśli czytnik znajduje się na początku elementu strumienia do odczytania; w przeciwnym razie , false.

Przykłady

W poniższym przykładzie użyto właściwości w IsStartObject celu określenia, czy znaleziono początek danych.

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

Uwagi

Określa IsStartObject , czy może odczytać obiekt, sprawdzając, czy jest on umieszczony w elemecie XML. Sprawdza również nazwę i przestrzeń nazw elementu XML, na którą znajduje się czytnik, i porównuje wartości z oczekiwaną nazwą i przestrzenią nazw. Oczekiwana nazwa i przestrzeń nazw można ustawić przy użyciu następujących elementów: nazwa kontraktu danych i przestrzeń nazw typu przekazanego do konstruktora lub rootName wartości i rootNamespace przekazane do konstruktora (jeśli istnieje).

Dotyczy