Megosztás:


POCO-támogatás

A POCO-minta bemutatja a jelölés nélküli típusok szerializálási támogatását; vagyis olyan típusok, amelyekre a szerializálási attribútumokat nem alkalmazták, más néven egyszerű régi CLR-objektumtípusok (POCO). A DataContractSerializer következtetés egy adatszerződést jelöl ki az összes olyan nyilvános, nem megjelölt típusra vonatkozóan, amely paraméter nélküli konstruktort használ. Az adatszerződések lehetővé teszik strukturált adatok átadását szolgáltatásokba és szolgáltatásokból. A jelöletlen típusokról további információt a Szerializálható típusok című témakörben talál.

Ez a minta az első lépéseken alapul, de összetett számokat használ a primitív numerikus típusok helyett. Az alapszintű adatszerződés mintájához hasonló, azzal a kivételt leszámítva, hogy a rendszer nem használja az DataContractAttributeDataMemberAttribute attribútumokat.

A szolgáltatást az Internet Information Services (IIS) üzemelteti, az ügyfél pedig egy konzolalkalmazás (.exe).

Megjegyzés:

A minta telepítési eljárása és összeállítási utasításai a témakör végén találhatók.

Az ComplexNumber osztályt a ServiceContract-ben használják. A ComplexNumber típus nem rendelkezik az DataContractAttribute alábbi mintakódban látható attribútumokkal és DataMemberAttribute attribútumokkal. Alapértelmezés szerint az összes nyilvános tulajdonság és mező szerializálva van.

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;
    }
}

A példa beállítása, elkészítése és futtatása

  1. Győződjön meg arról, hogy elvégezte a Windows Communication Foundation-minták One-Time beállítási eljárását.

  2. A megoldás C# vagy Visual Basic .NET kiadásának létrehozásához kövesse Windows Communication Foundation-mintákcímű témakör utasításait.

  3. Ha a mintát egy vagy több gép közötti konfigurációban szeretné futtatni, kövesse A Windows Communication Foundation-minták futtatásacímű témakör utasításait.

Lásd még