DataContractSerializer Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Сериализует и десериализует экземпляр типа в XML-поток или документ с помощью предоставленного контракта данных. Этот класс не наследуется.
public ref class DataContractSerializer sealed : System::Runtime::Serialization::XmlObjectSerializer
public sealed class DataContractSerializer : System.Runtime.Serialization.XmlObjectSerializer
type DataContractSerializer = class
inherit XmlObjectSerializer
Public NotInheritable Class DataContractSerializer
Inherits XmlObjectSerializer
- Наследование
Комментарии
Дополнительные сведения об этом API см. в статье Дополнительные примечания API для DataContractSerializer.
Конструкторы
DataContractSerializer(Type) |
Инициализирует новый экземпляр класса DataContractSerializer для сериализации или десериализации объекта указанного типа. |
DataContractSerializer(Type, DataContractSerializerSettings) |
Инициализирует новый экземпляр класса DataContractSerializer для сериализации или десериализации объекта указанного типа и параметров. |
DataContractSerializer(Type, IEnumerable<Type>) |
Инициализирует новый экземпляр класса DataContractSerializer для выполнения сериализации или десериализации объекта указанного типа и инициализирует коллекцию известных типов, которые могут присутствовать в графе объекта. |
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Инициализирует новый экземпляр класса DataContractSerializer для сериализации или десериализации объекта указанного типа. Этот метод также задает список известных типов, которые могут присутствовать в графе объекта; максимальное количество сериализуемых элементов графа; параметры, указывающие, пропускать ли непредвиденные данные, использовать ли нестандартные конструкции XML для сохранения данных ссылок на объект в графе и использовать ли суррогат для пользовательской сериализации. |
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Инициализирует новый экземпляр класса DataContractSerializer для сериализации или десериализации объекта указанного типа. Этот метод также задает список известных типов, которые могут присутствовать в графе объекта; максимальное количество сериализуемых элементов графа; параметры, указывающие, пропускать ли непредвиденные данные, использовать ли нестандартные конструкции XML для сохранения данных ссылок на объект в графе и использовать ли суррогат для пользовательской сериализации; а также альтернативу для сопоставления объявлений |
DataContractSerializer(Type, String, String) |
Инициализирует новый экземпляр класса DataContractSerializer для выполнения сериализации или десериализации объекта указанного типа с помощью предоставленных корневых элемента и пространства имен XML. |
DataContractSerializer(Type, String, String, IEnumerable<Type>) |
Инициализирует новый экземпляр класса DataContractSerializer для сериализации или десериализации объекта указанного типа. Этот метод также задает корневые XML-элемент и пространство имен в двух строковых параметрах, а также список известных типов, которые могут присутствовать в графе объектов. |
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Инициализирует новый экземпляр класса DataContractSerializer для сериализации или десериализации объекта указанного типа. Этот метод также задает список известных типов, которые могут присутствовать в графе объекта; максимальное количество сериализуемых элементов графа; параметры, указывающие, пропускать ли непредвиденные данные, использовать ли нестандартные конструкции XML для сохранения данных ссылок на объект в графе и использовать ли суррогат для пользовательской сериализации; а также XML-элемент и пространство имен, в которых находится содержимое. |
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Инициализирует новый экземпляр класса DataContractSerializer для сериализации или десериализации объекта указанного типа. Этот метод также задает список известных типов, которые могут присутствовать в графе объекта; максимальное количество сериализуемых элементов графа; параметры, указывающие, пропускать ли непредвиденные данные, использовать ли нестандартные конструкции XML для сохранения данных ссылок на объект в графе и использовать ли суррогат для пользовательской сериализации; а также XML-элемент и пространство имен, в которых находится содержимое, и альтернативу для сопоставления объявлений |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString) |
Инициализирует новый экземпляр класса DataContractSerializer для выполнения сериализации или десериализации объекта указанного типа с помощью предоставленных корневых элемента и пространства имен XML, заданных посредством параметров типа XmlDictionaryString. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>) |
Инициализирует новый экземпляр класса DataContractSerializer для сериализации или десериализации объекта указанного типа. Этот метод также задает корневые XML-элемент и пространство имен в двух параметрах XmlDictionaryString, а также список известных типов, которые могут присутствовать в графе объекта. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Инициализирует новый экземпляр класса DataContractSerializer для сериализации или десериализации объекта указанного типа. Этот метод также задает список известных типов, которые могут присутствовать в графе объекта; максимальное количество сериализуемых элементов графа; параметры, указывающие, пропускать ли непредвиденные данные, использовать ли нестандартные конструкции XML для сохранения данных ссылок на объект в графе и использовать ли суррогат для пользовательской сериализации; а также параметры XmlDictionaryString, задающие XML-элемент и пространство имен, в которых находится содержимое. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Инициализирует новый экземпляр класса DataContractSerializer для сериализации или десериализации объекта указанного типа. Этот метод также задает список известных типов, которые могут присутствовать в графе объекта; максимальное количество сериализуемых элементов графа; параметры, указывающие, пропускать ли непредвиденные данные, использовать ли нестандартные конструкции XML для сохранения данных ссылок на объект в графе и использовать ли суррогат для пользовательской сериализации; параметры XmlDictionaryString, задающие XML-элемент и пространство имен, в которых находится содержимое, и альтернативу для сопоставления объявлений |
Свойства
DataContractResolver |
Получает компонент, используемый для динамического сопоставления объявлений |
DataContractSurrogate |
Возвращает тип суррогата, который может расширить процесс сериализации или десериализации. |
IgnoreExtensionDataObject |
Возвращает значение, указывающее, должны ли игнорироваться данные, предоставляемые расширением класса, при сериализации или десериализации класса. |
KnownTypes |
Возвращает коллекцию типов, которые могут присутствовать в графе объекта, сериализованном с помощью этого экземпляра класса DataContractSerializer. |
MaxItemsInObjectGraph |
Возвращает максимальное количество элементов в графе объекта для сериализации или десериализации. |
PreserveObjectReferences |
Возвращает значение, указывающее, следует ли использовать нестандартные конструкции XML для сохранения данных ссылок на объект. |
SerializeReadOnlyTypes |
Получает значение, указывающее, сериализованы ли типы, доступные только для чтения. |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
IsStartObject(XmlDictionaryReader) |
Определяет, расположен ли объект XmlDictionaryReader на объекте, который может быть десериализован. |
IsStartObject(XmlReader) |
Определяет, расположен ли объект XmlReader на объекте, который может быть десериализован. |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ReadObject(Stream) |
Считывает XML-поток или XML-документ с помощью средства чтения Stream и возвращает десериализованный объект. (Унаследовано от XmlObjectSerializer) |
ReadObject(XmlDictionaryReader) |
Считывает XML-документ или XML-поток с помощью средства чтения XmlDictionaryReader и возвращает десериализованный объект. (Унаследовано от XmlObjectSerializer) |
ReadObject(XmlDictionaryReader, Boolean) |
Считывает XML-поток с помощью средства чтения XmlDictionaryReader и возвращает десериализованный объект; также указывает, была ли выполнена проверка имени объекта перед чтением его значения. |
ReadObject(XmlDictionaryReader, Boolean, DataContractResolver) |
Считывает XML-документ или поток XML-документов и возвращает десериализованный объект. Метод включает параметр, определяющий, проверяется ли имя объекта, и сопоставитель для сопоставления объявлений |
ReadObject(XmlReader) |
Считывает XML-поток с помощью средства чтения XmlReader и возвращает десериализованный объект. |
ReadObject(XmlReader, Boolean) |
Считывает XML-поток с помощью средства чтения XmlReader и возвращает десериализованный объект; также указывает, была ли выполнена проверка имени объекта перед чтением его значения. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
WriteEndObject(XmlDictionaryWriter) |
Выполняет запись закрывающего XML-элемента с помощью средства записи XmlDictionaryWriter. |
WriteEndObject(XmlWriter) |
Выполняет запись закрывающего XML-элемента с помощью средства записи XmlWriter. |
WriteObject(Stream, Object) |
Записывает полное содержимое объекта (начало записи, запись содержимого и завершение записи) в XML-документ или поток с помощью указанного средства записи Stream. (Унаследовано от XmlObjectSerializer) |
WriteObject(XmlDictionaryWriter, Object) |
Записывает полное содержимое объекта (начало записи, запись содержимого и завершение записи) в XML-документ или поток с помощью указанного средства записи XmlDictionaryWriter. (Унаследовано от XmlObjectSerializer) |
WriteObject(XmlDictionaryWriter, Object, DataContractResolver) |
Записывает все данные объекта (начальный XML-элемент, содержимое и включающий элемент) в XML-документ или поток с помощью указанного xmlDictionaryWriter. Метод включает сопоставитель для сопоставления объявлений |
WriteObject(XmlWriter, Object) |
Записывает все данные объекта (начальный XML-элемент, содержимое и закрывающий элемент) в XML-документ или поток с помощью средства записи XmlWriter. |
WriteObjectContent(XmlDictionaryWriter, Object) |
Выполняет запись содержимого XML с помощью средства записи XmlDictionaryWriter. |
WriteObjectContent(XmlWriter, Object) |
Выполняет запись содержимого XML с помощью средства записи XmlWriter. |
WriteStartObject(XmlDictionaryWriter, Object) |
Выполняет запись открывающего XML-элемента с помощью модуля записи XmlDictionaryWriter. |
WriteStartObject(XmlWriter, Object) |
Выполняет запись открывающего XML-элемента с помощью модуля записи XmlWriter. |
Методы расширения
GetSerializationSurrogateProvider(DataContractSerializer) |
Возвращает суррогатный поставщик сериализации для этого сериализатора. |
SetSerializationSurrogateProvider(DataContractSerializer, ISerializationSurrogateProvider) |
Указывает суррогатный поставщик сериализации для этого DataContractSerializer. |
Применяется к
Потокобезопасность
Экземпляры этого класса являются потокобезопасными, за исключением случаев, когда экземпляр используется с реализацией IDataContractSurrogate или DataContractResolver.