Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

OE-NIK HP Haladó Programozás Windows Communication Foundation A szolgáltatás, a hoszt és az ügyfél elkészítése.

Hasonló előadás


Az előadások a következő témára: "OE-NIK HP Haladó Programozás Windows Communication Foundation A szolgáltatás, a hoszt és az ügyfél elkészítése."— Előadás másolata:

1 OE-NIK HP Haladó Programozás Windows Communication Foundation A szolgáltatás, a hoszt és az ügyfél elkészítése

2 OE-NIK HP Haladó Programozás Windows Communication Foundation A szolgáltatás, a hoszt és az ügyfél elkészítése

3 V1.0 Windows Communication Foundation Elosztott rendszerek készítéséhez kifejlesztett API A.NET 3.0-ban jelent meg A korábbi, egymástól független elosztott technológiákat integrálja –DCOM,.NET remoting, XML-webszolgáltatások stb. Jellemzői Erősen típusos és típus nélküli üzenetek –Így a.NET egyedi típusai könnyen megoszthatók Többféle kötés –HTTP, TCP, MSMQ, named pipe-ok Legújabb webszolgáltatások specifikációjának támogatása Teljesen integrált biztonsági modell Munkamenetszerű állapotkezelési módszerek és egyirányú, állapot nélküli üzenetek támogatása 3 OE-NIK HP

4 V1.0 A WCF-alkalmazás részei WCF szolgáltatás –Általában egy DLL, amely a funkcionalitást képviselő osztályokat és interfészeket tartalmaz WCF szolgáltatás hoszt –Ez hosztolja a szolgáltatást –Bármilyen.NET végrehajtható állomány lehet WCF-ügyfél –Hozzáfér és használja a szolgáltatás funkcionalitását egy közbeépülő proxyn keresztül –Bármilyen.NET alkalmazás lehet 4 OE-NIK HP

5 V1.0 A WCF-alkalmazás részei 5 OE-NIK HP Kliens alkalmazásWCF-hoszt ProxyWCF-szolgáltatás Konfigurációs állomány Érdemes az összeköttetéssel kapcsolatos információkat *.config fájlban tárolni, hiszen ebben az esetben a kapcsolat megváltoztatása csak a fájl átírását jelenti. Ha IIS-t használunk a szolgáltatás hosztolására, nem kell egyedi hosztot készíteni.

6 V1.0 A WCF ABC-je A hoszt és a kliens kommunikációjához az alábbiak megadása szükséges: –Address (cím): a szolgáltatás elérésének címe Séma:// [:port]/útvonal alakban pl. –Binding (kötés): hálózati protokoll, kódolási mechanizmus, szállítási réteg megadása Pl. WSHttpBinding webszolgáltatásokhoz NetTcpBinding több gépen futó.NET-alkalmazások között –Contract (szerződés): a szolgáltatás mások által elérhető metódusainak leírása Szolgáltatásszerződés: olyan.NET interfész, amely WCF-szerződést jelképez 6 OE-NIK HP

7 Haladó Programozás Windows Communication Foundation A szolgáltatás, a hoszt és az ügyfél elkészítése

8 V1.0 A szolgáltatás elkészítése Válasszuk a WCF Library projektet –Így megkapjuk a szolgáltatás vázát ServiceContract –Interfész, amely a szolgáltatás metódusait tartalmazza –Minden kipublikálandó metódust a OperationContract attribútummal kell ellátni –Érdemes az egyediség kedvéért névteret megadni (tipikusan a készítő webcíme) Pl. [ServiceContract(Namespace="http://nik.uni-obuda.hu/hp")] DataContract –Az átadni kívánt adattípus –Publikus tagjait DataMember attribútummal kell ellátni Szolgáltatás osztály –Ez tartalmazza a szolgáltatás funkcionalitását –Megvalósítja a ServiceContractnál megadott interfészt 8 OE-NIK HP

9 V1.0 A szolgáltatás tesztelése A Visual Studio egy WCF Test Client-et hoz létre, amellyel kipróbálhatjuk a szolgáltatás metódusait Ehhez szüksége van az App.Config fájlra, amely szintén nem szokványos egy DLL-ben A metódusra duplán kattintva beírhatjuk a megfelelő paramétereket, majd az Invoke gombbal a metódust futtathatjuk 9 OE-NIK HP

10 V1.0 App.config fájl Tartalmazza a kommunikációhoz szükséges információkat –Cím, kötés, szerződés (ABC) –MEX: Metadata Exchange (metaadatcsere) WCF szolgáltatási viselkedés, amellyel beállíthatjuk, hogy a futtatókörnyezet hogyan kezelje a szolgáltatást. Az ügyfél proxy osztályának generálásához szükséges megadni. –Általában automatikusan frissül, de bizonyos esetekben kézzel kell beálítani Szerkesztés varázslóval –App.config fájlon jobb katt: Edit WCF configuration –Services: a szolgáltató osztály neve –Host: a szolgáltatás IP címe –Endpoints: ABC és MEX adatok Valójában egy XML fájl 10 OE-NIK HP

11 V1.0 App.config fájl 11 OE-NIK HP ABC a cím a baseAddress-ben. A kötésből látszik, hogy webszolgálatás MEX végpont engedélyezése Viselkedésdefiníció a MEX-nek.

12 V1.0 A hoszt elkészítése Szükséges hozzá a System.ServiceModel dll –Referenciaként hozzá kell adni Az App.Config fájlra itt lesz szükség, másoljuk át, a dll-ből töröljük A hoszt példányosítása a szolgáltatás típusának megadásával –ServiceHost host = new ServiceHost(typeof(EightBallService)) A szolgáltatás megnyitjuk, majd a végén bezárjuk –using: definiálja az objektum hatókörét, ezen kívül az objektum felszabadul 12 OE-NIK HP

13 V1.0 Ügyfél elkészítése A megoldás menete megegyezik azzal, mint amikor egy webszolgáltatásra iratkozunk fel A hosztnak futnia kell a proxy osztály generálása alatt 13 OE-NIK HP

14 V1.014 OE-NIK HP Feladat Készítsünk egy jósló szolgáltatást (The Magic Eight Ball), a szolgáltatást hosztoljuk és vegyük igénybe –A kérdező neve és születési dátuma alapján kiválaszt egyet az előre megadott válaszok közül –A szolgáltatás egyetlen metódust ad –Ennek egyetlen paramétere a személy adatait tartalmazó objektum –A hoszt legyen konzolalkalmazás –A metódus meghívása történhessen aszinkron módon

15 V1.0 Megoldás 1.A szolgáltatás elkészítése 1.WCF Service Library -> EightBallDLL 2.Szerződés -> IEightBallService 3.Funkcionalitás -> EightBallService 2.A hoszt lekészítése 1.Console Application -> EightBallHost 2.Szolgáltatási ABC -> App.Config fájl 3.Ügyfél elkészítése 1.Windows Form/Console Application -> EigthBallConsumer 15 OE-NIK HP

16 V1.016 OE-NIK HP Gyakorló feladat Készítsünk egy szolgáltatást, amellyel éttermekhez tartozó pontszámokat kérhetünk le, és pontozhatjuk az éttermeket. A szolgáltatást hosztoljuk és vegyük igénybe. –A szolgáltatás adja meg, hogy milyen éttermekről tartalmaz adatot –Egy étterem megadására adja meg a hozzá tartozó értéket

17 V1.017 OE-NIK HP Irodalomjegyzék Andrew Troelsen: A C# 2008 és a.NET kötet 2009 SZAK Kiadó

18 OE-NIK HP

19


Letölteni ppt "OE-NIK HP Haladó Programozás Windows Communication Foundation A szolgáltatás, a hoszt és az ügyfél elkészítése."

Hasonló előadás


Google Hirdetések