Megosztás a következőn keresztül:


Oktatóanyag: Windows Communication Foundation szolgáltatási szerződés implementálá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 a másodikat ismerteti. Az oktatóanyagok áttekintéséért lásd : Oktatóanyag: Ismerkedés a Windows Communication Foundation-alkalmazásokkal.

A WCF-alkalmazások létrehozásának következő lépése az, hogy kódot ad hozzá az előző lépésben létrehozott WCF szolgáltatásfelület implementálásához. Ebben a lépésben létrehoz egy osztályt CalculatorService , amely implementálja a felhasználó által definiált ICalculator felületet. Az alábbi kód minden metódusa egy számológépműveletet hív meg, és a teszteléshez szöveget ír a konzolra.

Ebben az oktatóanyagban az alábbiakkal fog megismerkedni:

  • Adjon hozzá kódot a WCF szolgáltatási szerződés implementálásához.
  • Hozza létre a megoldást.

Kód hozzáadása a WCF szolgáltatási szerződés implementálásához

A GettingStartedLibben nyissa meg a Service1.cs vagy Service1.vb fájlt, és cserélje le a kódját a következő kódra:

using System;
using System.ServiceModel;

namespace GettingStartedLib
{
    public class CalculatorService : ICalculator
    {
        public double Add(double n1, double n2)
        {
            double result = n1 + n2;
            Console.WriteLine("Received Add({0},{1})", n1, n2);
            // Code added to write output to the console window.
            Console.WriteLine("Return: {0}", result);
            return result;
        }

        public double Subtract(double n1, double n2)
        {
            double result = n1 - n2;
            Console.WriteLine("Received Subtract({0},{1})", n1, n2);
            Console.WriteLine("Return: {0}", result);
            return result;
        }

        public double Multiply(double n1, double n2)
        {
            double result = n1 * n2;
            Console.WriteLine("Received Multiply({0},{1})", n1, n2);
            Console.WriteLine("Return: {0}", result);
            return result;
        }

        public double Divide(double n1, double n2)
        {
            double result = n1 / n2;
            Console.WriteLine("Received Divide({0},{1})", n1, n2);
            Console.WriteLine("Return: {0}", result);
            return result;
        }
    }
}
Imports System.ServiceModel

Namespace GettingStartedLib

    Public Class CalculatorService
        Implements ICalculator

        Public Function Add(ByVal n1 As Double, ByVal n2 As Double) As Double Implements ICalculator.Add
            Dim result As Double = n1 + n2
            ' Code added to write output to the console window.
            Console.WriteLine("Received Add({0},{1})", n1, n2)
            Console.WriteLine("Return: {0}", result)
            Return result
        End Function

        Public Function Subtract(ByVal n1 As Double, ByVal n2 As Double) As Double Implements ICalculator.Subtract
            Dim result As Double = n1 - n2
            Console.WriteLine("Received Subtract({0},{1})", n1, n2)
            Console.WriteLine("Return: {0}", result)
            Return result

        End Function

        Public Function Multiply(ByVal n1 As Double, ByVal n2 As Double) As Double Implements ICalculator.Multiply
            Dim result As Double = n1 * n2
            Console.WriteLine("Received Multiply({0},{1})", n1, n2)
            Console.WriteLine("Return: {0}", result)
            Return result

        End Function

        Public Function Divide(ByVal n1 As Double, ByVal n2 As Double) As Double Implements ICalculator.Divide
            Dim result As Double = n1 / n2
            Console.WriteLine("Received Divide({0},{1})", n1, n2)
            Console.WriteLine("Return: {0}", result)
            Return result

        End Function
    End Class
End Namespace

App.config szerkesztése

Az App.config szerkesztése a GettingStartedLibben a kód módosításainak megfelelően.

  • Visual C#-projektek esetén:

    • A 14. sor módosítása <service name="GettingStartedLib.CalculatorService">
    • A 17. sor módosítása <add baseAddress = "http://localhost:8000/GettingStarted/CalculatorService" />
    • A 22. sor módosítása <endpoint address="" binding="wsHttpBinding" contract="GettingStartedLib.ICalculator">
  • Visual Basic-projektek esetén:

    • A 14. sor módosítása <service name="GettingStartedLib.GettingStartedLib.CalculatorService">
    • A 17. sor módosítása <add baseAddress = "http://localhost:8000/GettingStarted/CalculatorService" />
    • A 22. sor módosítása <endpoint address="" binding="wsHttpBinding" contract="GettingStartedLib.GettingStartedLib.ICalculator">

A kód fordítása

Hozza létre a megoldást annak ellenőrzésére, hogy nincsenek-e fordítási hibák. Ha Visual Studio-t használ, a Build menüben válassza a Megoldás létrehozása lehetőséget (vagy nyomja le a Ctrl Shift+B billentyűkombinációt+).

Következő lépések

Ez az oktatóanyag bemutatta, hogyan végezheti el az alábbi műveleteket:

  • Adjon hozzá kódot a WCF szolgáltatási szerződés implementálásához.
  • Hozza létre a megoldást.

Folytassa a következő oktatóanyagtal, amelyből megtudhatja, hogyan futtathatja a WCF szolgáltatást.