Поделиться через


Поддержка POCO

Пример POCO демонстрирует поддержку сериализации для немаркированных типов. То есть типы, к которым атрибуты сериализации не применялись, иногда называются типами обычного объекта CLR (POCO). Выводит DataContractSerializer контракт данных для всех общедоступных немаркированных типов, имеющих конструктор без параметров. Контракты данных позволяют передавать структурированные данные в службы и из служб. Дополнительные сведения о несмеченных типах см. в разделе "Сериализуемые типы".

Этот пример основан на начале работы, но использует сложные числа вместо примитивных числовых типов. Он также похож на пример "Базовый контракт данных", за исключением того, что DataContractAttributeDataMemberAttribute атрибуты и атрибуты не используются.

Клиентом является консольное приложение (EXE), а служба размещается в службах Internet Information Services (IIS).

Примечание.

Процедура настройки и инструкции по построению для данного образца приведены в конце этого раздела.

Класс ComplexNumber используется классом ServiceContract. У типа ComplexNumber нет атрибутов DataContractAttribute и DataMemberAttribute, как показано в следующем образце кода. По умолчанию все открытые свойства и поля сериализуются.

public class ComplexNumber
{
    public double Real;
    public double Imaginary;
    public ComplexNumber()
    {
        Real = double.MinValue;
        Imaginary = double.MinValue;
    }
    public ComplexNumber(double real, double imaginary)
    {
        this.Real = real;
        this.Imaginary = imaginary;
    }
}

Настройка, сборка и выполнение образца

  1. Убедитесь, что вы выполнили процедуру однократной установки для примеров Windows Communication Foundation.

  2. Чтобы создать выпуск решения на языке C# или Visual Basic .NET, следуйте инструкциям в разделе Building the Windows Communication Foundation Samples.

  3. Чтобы запустить пример в конфигурации с одним или несколькими компьютерами, следуйте инструкциям в разделе "Примеры Windows Communication Foundation".

См. также