Hoe gebruik je WCF-service

As additional feature Emply Hire system offers to its customers an ability to use WCF service. This can be helpful in case if there is a need to manipulate with department(s) or user(s) from custom .NET application.

In general WCF service allows to:

  • Get departments *
  • Add new department
  • Modify existing department
  • Remove existing department
  • Get users *
  • Get user
  • Add new user
  • Modify existing user
  • Remove existing users
  • Get candidate
  • Get vacancy
  • Get vacancies *
  • Get applications from vacancy
  • Get workflows
  • Get data type by id

* request can take a lot of time depending on amount of existing data

 

Next example requires link to WSDL of WCF service. It can be found if open the service page <site_address>/api/Emply.svc in browser. For example if site address is https://customer.emply.net/ than full link to service page will be https://customer.emply.net/api/Emply.svc. On service page present developer information about service and direct link to service WSDL - for https://customer.emply.net/ it will be https://customer.emply.net/api/Emply.svc?wsdl:

 

Hieronder staat een voorbeeld van hoe je een eenvoudige consoletoepassing configureert voor interactie met de WCF-service:

  1. Open Visual Studio en maak een nieuw project voor een consoletoepassing:
    Bestand → Nieuw → Project.


  2. In het venster Nieuw project kies je de gewenste programmeertaal en het platform uit de beschikbare sjablonen. Selecteer bijvoorbeeld de taal C# en Consoletoepassing onder de sectie Windows-sjablonen.



  3. Vouw Oplossingsverkenner uit, klik met de rechtermuisknop op het project en selecteer in het menu Toevoegen → Serviceverwijzing….


  4. In het verschenen venster Serviceverwijzing toevoegen plak je de gekopieerde link naar de WSDL van de WCF-service vanuit de servicepagina in het veld Adres en klik je op Ga.



  5. Na de vorige stap wordt het venster Serviceverwijzing toevoegen bijgewerkt. Het veld Namespace kan worden aangepast naar een meer betekenisvolle waarde.



Het gebruik van de WCF-service gaat ervan uit dat de ontwikkelaar beschikt over de API-sleutel die door het Emply Hire-systeem aan de klant is verstrekt.

Onderstaand codevoorbeeld laat zien hoe je afdelingen kunt ophalen:

C#
using (EmplyWcfServiceClient client = new EmplyWcfServiceClient())
{
        DepartmentsRequest request = new DepartmentsRequest
        {
                ApiKey = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
        };
        DepartmentsResponse response = client.GetDepartments(request);
        
        foreach (DepartmentData department in response.Departments)
        {
                Console.WriteLine(department.Name);
        }
}

 

Het wordt ook aanbevolen om de waarden van maxBufferPoolSize, maxBufferSize en maxReceivedMessageSize te verhogen voor de serviceverbinding. Hiervoor pas je het bestand app.config als volgt aan:

<configuration>
    …
    <system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding maxBufferPoolSize="2147483647"
                         maxBufferSize="2147483647"
                         maxReceivedMessageSize="2147483647">
    …

Deze instellingen zorgen ervoor dat grotere berichten en buffers kunnen worden verwerkt tijdens de communicatie met de WCF-service.

 

  •  
Was dit artikel nuttig?
Aantal gebruikers dat dit nuttig vond: 0 van 0

Artikelen in deze sectie

Zie meer