次の方法で共有


POCO サポート

POCO のサンプルでは、マークされていない型 (POCO (Plain Old CLR Object) 型とも呼ばれる、シリアル化属性が適用されていない型) のシリアル化のサポートを示します。 DataContractSerializer では、パラメーターなしのコンストラクターを持つすべてのマークされていないパブリック型について、データ コントラクトを推測します。 データ コントラクトを使用すると、サービスと構造化データをやり取りできます。 マークされていない型の詳細については、「シリアル化可能な型」を参照してください。

このサンプルは、「入門サンプル」に基づいていますが、プリミティブ数値型ではなく複素数を使用しています。 また、DataContractAttribute および DataMemberAttribute 属性が使用されない点を除いて、「基本的なデータ コントラクト」のサンプルにも似ています。

サービスはインターネット インフォメーション サービス (IIS) によってホストされています。クライアントはコンソール アプリケーション (.exe) です。

Note

このサンプルのセットアップ手順とビルド手順については、このトピックの最後を参照してください。

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 サンプルの 1 回限りのセットアップの手順を実行したことを確認します。

  2. ソリューションの C# 版または Visual Basic .NET 版をビルドするには、「 Building the Windows Communication Foundation Samples」の手順に従います。

  3. 単一または複数コンピューター構成でサンプルを実行するには、「Windows Communication Foundation サンプルの実行」の手順に従います。

関連項目