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;
}
}
サンプルをセットアップ、ビルド、および実行するには
Windows Communication Foundation サンプルの 1 回限りのセットアップの手順を実行したことを確認します。
ソリューションの C# 版または Visual Basic .NET 版をビルドするには、「 Building the Windows Communication Foundation Samples」の手順に従います。
単一または複数コンピューター構成でサンプルを実行するには、「Windows Communication Foundation サンプルの実行」の手順に従います。