Oktatóanyag: A Windows Communication Foundation szolgáltatásszerződésének meghatározása
Ez az oktatóanyag a Windows Communication Foundation (WCF) alapszintű alkalmazás létrehozásához szükséges öt feladat közül az elsőt ismerteti. Az oktatóanyagok áttekintéséért lásd : Oktatóanyag: Ismerkedés a Windows Communication Foundation-alkalmazásokkal.
WCF-szolgáltatás létrehozásakor az első feladat egy szolgáltatási szerződés meghatározása. A szolgáltatási szerződés határozza meg, hogy a szolgáltatás milyen műveleteket támogat. A műveletet webszolgáltatás-metódusnak is tekinthetjük. Szolgáltatásszerződéseket egy C# vagy Visual Basic felület definiálásával hozhat létre. Az interfészek jellemzői a következők:
- A felület minden metódusa egy konkrét szolgáltatási műveletnek felel meg.
- Minden illesztőhöz alkalmaznia kell az ServiceContractAttribute attribútumot.
- Minden művelethez/metódushoz alkalmaznia kell az OperationContractAttribute attribútumot.
Ebben az oktatóanyagban az alábbiakkal fog megismerkedni:
- Hozzon létre egy WCF-szolgáltatástár-projektet .
- Szolgáltatási szerződés felületének definiálása.
WCF-szolgáltatáskódtár-projekt létrehozása és szolgáltatási szerződési felület definiálása
Nyissa meg rendszergazdaként a Visual Studiót. Ehhez válassza ki a Visual Studio programot a Start menüben, majd válassza a Helyi menü További>futtatás rendszergazdaként parancsát.
Hozzon létre egy WCF-szolgáltatástár-projektet .
A Fájl menüben válassza az Új>projekt lehetőséget.
Az Új projekt párbeszédpanel bal oldalán bontsa ki a Visual C# vagy a Visual Basic elemet, majd válassza ki a WCF kategóriát. A Visual Studio megjeleníti a projektsablonok listáját az ablak középső részén. Válassza a WCF szolgáltatástárat.
Feljegyzés
Ha nem látja a WCF-projektsablon kategóriáját, előfordulhat, hogy telepítenie kell a Visual Studio Windows Communication Foundation összetevőjét. Az Új projekt párbeszédpanelen válassza a Visual Studio Installer megnyitása hivatkozást a bal oldalon. Válassza az Egyes összetevők lapot, majd keresse meg és válassza a Windows Communication Foundationt a Fejlesztési tevékenységek kategóriában. Kattintson a Módosítás gombra az összetevő telepítésének megkezdéséhez.
Az ablak alsó szakaszában adja meg a GettingStartedLib kifejezést a Megoldás neve és a GettingStarted kifejezéshez.
Kattintson az OK gombra.
A Visual Studio létrehozza a projektet, amely három fájlból áll: IService1.cs (vagy Visual Basic-projekthez IService1.vb), Service1.cs (vagy egy Visual Basic-projekthez Service1.vb) és az App.config fájlból. A Visual Studio a következőképpen definiálja ezeket a fájlokat:
- Az IService1 fájl tartalmazza a szolgáltatási szerződés alapértelmezett definícióját.
- A Service1 fájl tartalmazza a szolgáltatási szerződés alapértelmezett implementációját.
- Az App.config fájl tartalmazza az alapértelmezett szolgáltatás Visual Studio WCF szolgáltatásgazda eszközzel való betöltéséhez szükséges konfigurációs adatokat. A WCF szolgáltatásgazda eszközével kapcsolatos további információkért lásd a WCF szolgáltatásgazda (WcfSvcHost.exe) című témakört.
Feljegyzés
Ha Visual Basic fejlesztői környezetbeállításokkal telepítette a Visual Studiót, előfordulhat, hogy a megoldás rejtett. Ha ez a helyzet, válassza az Eszközök menü Beállítások elemét, majd a Beállítások ablakban válassza a Projektek és megoldások>általános lehetőséget. Válassza az Always show solution (Megoldás megjelenítése) lehetőséget. Emellett ellenőrizze, hogy az új projektek mentése létrehozáskor be van-e jelölve.
A Megoldáskezelő nyissa meg a IService1.cs vagy IService1.vb fájlt, és cserélje le a kódját a következő kódra:
using System; using System.ServiceModel; namespace GettingStartedLib { [ServiceContract(Namespace = "http://Microsoft.ServiceModel.Samples")] public interface ICalculator { [OperationContract] double Add(double n1, double n2); [OperationContract] double Subtract(double n1, double n2); [OperationContract] double Multiply(double n1, double n2); [OperationContract] double Divide(double n1, double n2); } }
Imports System.ServiceModel Namespace GettingStartedLib <ServiceContract(Namespace:="http://Microsoft.ServiceModel.Samples")> _ Public Interface ICalculator <OperationContract()> _ Function Add(ByVal n1 As Double, ByVal n2 As Double) As Double <OperationContract()> _ Function Subtract(ByVal n1 As Double, ByVal n2 As Double) As Double <OperationContract()> _ Function Multiply(ByVal n1 As Double, ByVal n2 As Double) As Double <OperationContract()> _ Function Divide(ByVal n1 As Double, ByVal n2 As Double) As Double End Interface End Namespace
Ez a szerződés egy online számológépet határoz meg. Figyelje meg, hogy a
ICalculator
felület az attribútummal ServiceContractAttribute van megjelölve (egyszerűsítettenServiceContract
). Ez az attribútum egy névteret határoz meg a szerződés nevének egyértelműsítéséhez. A kód az egyes kalkulátorműveleteket az OperationContractAttribute attribútummal jelöli meg (egyszerűsítettenOperationContract
).
Következő lépések
Ez az oktatóanyag bemutatta, hogyan végezheti el az alábbi műveleteket:
- Hozzon létre egy WCF-szolgáltatástár-projektet.
- Szolgáltatási szerződés felületének definiálása.
Folytassa a következő oktatóanyagtal, amelyből megtudhatja, hogyan valósíthatja meg a WCF szolgáltatási szerződését.