DataContractSerializer.ReadObject Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Считывает XML-поток и возвращает десериализованный объект.
Перегрузки
ReadObject(XmlReader) |
Считывает XML-поток с помощью средства чтения XmlReader и возвращает десериализованный объект. |
ReadObject(XmlDictionaryReader, Boolean) |
Считывает XML-поток с помощью средства чтения XmlDictionaryReader и возвращает десериализованный объект; также указывает, была ли выполнена проверка имени объекта перед чтением его значения. |
ReadObject(XmlReader, Boolean) |
Считывает XML-поток с помощью средства чтения XmlReader и возвращает десериализованный объект; также указывает, была ли выполнена проверка имени объекта перед чтением его значения. |
ReadObject(XmlDictionaryReader, Boolean, DataContractResolver) |
Считывает XML-документ или поток XML-документов и возвращает десериализованный объект. Метод включает параметр, определяющий, проверяется ли имя объекта, и сопоставитель для сопоставления объявлений |
ReadObject(XmlReader)
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
Считывает XML-поток с помощью средства чтения XmlReader и возвращает десериализованный объект.
public:
override System::Object ^ ReadObject(System::Xml::XmlReader ^ reader);
public override object ReadObject (System.Xml.XmlReader reader);
public override object? ReadObject (System.Xml.XmlReader reader);
override this.ReadObject : System.Xml.XmlReader -> obj
Public Overrides Function ReadObject (reader As XmlReader) As Object
Параметры
Возвращаемое значение
Десериализованный объект.
Применяется к
ReadObject(XmlDictionaryReader, Boolean)
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
Считывает XML-поток с помощью средства чтения XmlDictionaryReader и возвращает десериализованный объект; также указывает, была ли выполнена проверка имени объекта перед чтением его значения.
public:
override System::Object ^ ReadObject(System::Xml::XmlDictionaryReader ^ reader, bool verifyObjectName);
public override object ReadObject (System.Xml.XmlDictionaryReader reader, bool verifyObjectName);
public override object? ReadObject (System.Xml.XmlDictionaryReader reader, bool verifyObjectName);
override this.ReadObject : System.Xml.XmlDictionaryReader * bool -> obj
Public Overrides Function ReadObject (reader As XmlDictionaryReader, verifyObjectName As Boolean) As Object
Параметры
- reader
- XmlDictionaryReader
Объект XmlDictionaryReader, используемый для чтения XML-потока.
- verifyObjectName
- Boolean
Значение true
, если требуется проверить соответствие имени объекта предоставленному в конструкторе значению корневого имени; в противном случае — значение false
.
Возвращаемое значение
Десериализованный объект.
Исключения
Параметру verifyObjectName
задано значение true
и имя и пространство имен элемента не соответствуют значениям, заданным в конструкторе.
Примеры
В следующем примере считывается XML-документ и выполняется десериализация экземпляра объекта.
public static void ReadObject(string fileName)
{
Console.WriteLine("Deserializing an instance of the object.");
FileStream fs = new FileStream(fileName,
FileMode.Open);
XmlDictionaryReader reader =
XmlDictionaryReader.CreateTextReader(fs, new XmlDictionaryReaderQuotas());
DataContractSerializer ser = new DataContractSerializer(typeof(Person));
// Deserialize the data and read it from the instance.
Person deserializedPerson =
(Person)ser.ReadObject(reader, true);
reader.Close();
fs.Close();
Console.WriteLine(String.Format("{0} {1}, ID: {2}",
deserializedPerson.FirstName, deserializedPerson.LastName,
deserializedPerson.ID));
}
Public Shared Sub ReadObject(ByVal fileName As String)
Console.WriteLine("Deserializing an instance of the object.")
Dim fs As New FileStream(fileName, FileMode.Open)
Dim reader As XmlDictionaryReader = _
XmlDictionaryReader.CreateTextReader(fs, New XmlDictionaryReaderQuotas())
Dim ser As New DataContractSerializer(GetType(Person))
' Deserialize the data and read it from the instance.
Dim deserializedPerson As Person = CType(ser.ReadObject(reader, True), Person)
reader.Close()
fs.Close()
Console.WriteLine(String.Format("{0} {1}, ID: {2}", deserializedPerson.FirstName, deserializedPerson.LastName, deserializedPerson.ID))
End Sub
Применяется к
ReadObject(XmlReader, Boolean)
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
Считывает XML-поток с помощью средства чтения XmlReader и возвращает десериализованный объект; также указывает, была ли выполнена проверка имени объекта перед чтением его значения.
public:
override System::Object ^ ReadObject(System::Xml::XmlReader ^ reader, bool verifyObjectName);
public override object ReadObject (System.Xml.XmlReader reader, bool verifyObjectName);
public override object? ReadObject (System.Xml.XmlReader reader, bool verifyObjectName);
override this.ReadObject : System.Xml.XmlReader * bool -> obj
Public Overrides Function ReadObject (reader As XmlReader, verifyObjectName As Boolean) As Object
Параметры
- verifyObjectName
- Boolean
Значение true
, если требуется проверить соответствие имени объекта предоставленному в конструкторе значению корневого имени; в противном случае — значение false
.
Возвращаемое значение
Десериализованный объект.
Исключения
Параметру verifyObjectName
задано значение true
и имя и пространство имен элемента не соответствуют значениям, заданным в конструкторе.
Применяется к
ReadObject(XmlDictionaryReader, Boolean, DataContractResolver)
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
- Исходный код:
- DataContractSerializer.cs
Считывает XML-документ или поток XML-документов и возвращает десериализованный объект. Метод включает параметр, определяющий, проверяется ли имя объекта, и сопоставитель для сопоставления объявлений xsi:type
во время выполнения.
public:
System::Object ^ ReadObject(System::Xml::XmlDictionaryReader ^ reader, bool verifyObjectName, System::Runtime::Serialization::DataContractResolver ^ dataContractResolver);
public object? ReadObject (System.Xml.XmlDictionaryReader reader, bool verifyObjectName, System.Runtime.Serialization.DataContractResolver? dataContractResolver);
public object ReadObject (System.Xml.XmlDictionaryReader reader, bool verifyObjectName, System.Runtime.Serialization.DataContractResolver dataContractResolver);
override this.ReadObject : System.Xml.XmlDictionaryReader * bool * System.Runtime.Serialization.DataContractResolver -> obj
Public Function ReadObject (reader As XmlDictionaryReader, verifyObjectName As Boolean, dataContractResolver As DataContractResolver) As Object
Параметры
- reader
- XmlDictionaryReader
Модуль чтения XML, используемый для чтения содержимого.
- verifyObjectName
- Boolean
Значение true
, если нужно проверять имя объекта; в противном случае — значение false
.
- dataContractResolver
- DataContractResolver
Реализация DataContractResolver для сопоставления объявлений xsi:type
типам контракта данных.
Возвращаемое значение
Десериализованный объект.