giovedì 11 gennaio 2018

.Net utilizzo di un servizio Windows Communication Foundation in C# e VB.Net

Si riporta l'articolo scritto per il sito https://www.iprogrammatori.it/articoli/programmazione/art_net-40-utilizzo-di-un-servizio-windows-c_1545.aspx

In questo articolo vedremo come creare un semplice servizio di Windows Communication Foundation ed utilizzarlo in un application di tipo “Console Application”, tramite il linguaggio VB.Net e C#.

Stesura del codice

Si crea un nuovo progetto di tipo “Libreria di Servizi WCF” selezionando la categoria “WCF”, nel linguaggio di proprio interesse.
Dopo aver creato il progetto noteremo la presenza di due file, la classe services, dove troviamo la logica ed il codice ed un file di tipo Iservice.
Il file IService1, è un file di tipo interfaccia, dove troviamo il contratto, ossia la definizione dei metodi che saranno esposti.
Ogni metodo avrà l’attributo “OperationContract” mentre nelle classi le proprietà avranno l’attributo “DataMember”.
Quando si crea un nuovo servizio, nell’interfaccia avremmo creati di default metodi ed una classe.
Nel nostro caso, andremo a creare una funzione, che passando come parametro del testo, ne visualizzerà un altro, l’intento è solo quello di comprendere come funzionano i servizi di tipo “WCF”.
Qui di seguito si riporta il frammento di codice per entrambi i linguaggi, per il file “IService”



VB.Net

<OperationContract()>

    Function GetTesto(ByVal pTesto As String) As String

 

C#

[OperationContract]

        string GetTesto(string pTesto);

 
Passiamo alla classe “Service” dove andremo a scrivere il comportamento di tale metodo, ossia il codice per utilizzare tale metodo.
Qui di seguito si riporta il codice per entrambi i linguaggi.



VB.Net

Public Function GetTesto(ByVal pTesto As String) As String Implements IService1.GetTesto

        Return "Il testo è: " & pTesto

    End Function

 

C#

public string GetTesto(string pTesto)

        {

        

            return "Il testo è :" + pTesto;

       

        }

 
Anche in questo file, troveremo dei frammento di codice dei metodi presenti nell’interfaccia, che vengono generati durante la creazione del progetto.
Ora non ci resta che compilare il progetto per verificare che non ci siano problemi.
A questo punto se la compilazione è andata a buon fine, non ci resta che aggiungere alla nostra soluzione, un nuovo progetto di tipo “Console”.
Dopo aver creato il progetto di tipo “Console” presente nella categoria “Windows”, dobbiamo aggiungere come riferimento la libreria appena creata.
Tramite il tasto destro sul nome del progetto, selezioniamo la voce “Aggiungi Riferimenti” a questo punto seleziono la pagina “Progetti” e seleziono quello presente nella nostra soluzione.
Confermiamo il tutto tramite il pulsante “OK”.
Dobbiamo crearci un oggetti della classe del nostro servizio e poi passare un valore testo al metodo che abbiamo creato in tale classe.
Qui di seguito si riportano il frammento di codice di tale dichiarazione.



VB.Net

Dim servizioWcf As New Service1()

        Dim risultato As String = ""

        risultato = servizioWcf.GetTesto("Emanuele")

        Console.Write("Risultato: " & risultato)

        Console.ReadLine()

 

 

C#

           

Service1 servizioWcf = new Service1();

    string risultato = "";

                risultato = servizioWcf.GetTesto("Emanuele");

                Console.Write("risultato: " + risultato);

                Console.ReadLine();

 

 

Ora non ci resta che testare il nostro codice, eseguendo il progetto di tipo Application.

Conclusioni

L’articolo ha voluto introdurre il lettore nell’utilizzare i servizi “WCF” sempre più richieste nel mondo del lavoro, e soprattutto il loro utilizzo tramite progetti di tipo “Console Application”.
L’utilizzo dei servizi denominati Windows Communication Foundation, offrono notevoli potenziali, con uno studio che andrebbe approfondito e che nei prossimi articoli vedremo altri aspetti.

Nessun commento: