Share via


Procedura: accedere a un servizio Web in codice gestito

Aggiornamento: novembre 2007

L'accesso a un servizio Web in codice gestito è un processo molto semplice. Innanzitutto si aggiunge un riferimento Web al progetto relativo al servizio Web a cui si desidera accedere. Tale riferimento Web crea una classe proxy con metodi che fungono da proxy per ogni metodo esposto del servizio Web. Successivamente, viene aggiunto lo spazio dei nomi per il riferimento Web. Infine viene creata un'istanza della classe proxy, quindi si accede ai metodi di quella classe così come accadrebbe per qualsiasi altra classe. Per ulteriori informazioni, vedere la classe Modello di codice per accedere ai servizi Web in codice gestito.

Per impostazione predefinita, l'aggiunta di un riferimento Web comporta anche l'aggiunta di metodi alla classe proxy per accedere al servizio Web in modo asincrono. Per ulteriori informazioni, vedere la classe Procedura: accedere a un servizio Web in modo asincrono in codice gestito.

Per accedere a un servizio Web in codice gestito

  1. Creare l'applicazione da cui si desidera accedere a un servizio Web. Può trattarsi anche di un altro servizio Web.

  2. Aggiungere un riferimento Web relativo al servizio Web con cui l'applicazione dovrà interagire. Per istruzioni, vedere Aggiunta e rimozione di riferimenti Web.

  3. Creare un'istanza dell'oggetto proxy nel codice del client in cui si desidera accedere al servizio Web.

  4. Accedere ai metodi del servizio Web così come accadrebbe per qualsiasi altro componente.

    Nel codice di esempio riportato di seguito, l'applicazione client (Application1) accede a un servizio Web per il quale dispone di un riferimento Web (Converter) che contiene una classe proxy (Service1), dotata di un metodo (ConvertTemperature) per la chiamata al servizio Web. Le due righe di codice in grassetto rappresentano il codice necessario per accedere al servizio Web.

    Imports System
    Module Module1
        Sub Main()
            Dim cService As New Converter.Service1()
            Dim dFahrenheit As Double
            Dim dCelsius As Double
            Console.Write("Temperature in degrees Fahrenheit: ")
            dFahrenheit = Convert.ToDouble(Console.ReadLine())
            dCelsius = cService.ConvertTemperature(dFahrenheit)
            Console.Write("Temperature in degrees Celsius: ")
            Console.WriteLine(dCelsius.ToString())
        End Sub
    End Module
    
    using System;
    namespace Application1
    {
       class Class1
       {
          static void Main()
          {
             Converter.Service1 cService = new Converter.Service1();
             Console.WriteLine("Temperature in degrees Fahrenheit: ");
             double dFahrenheit = Convert.ToDouble(Console.ReadLine());
             double dCelsius = cService.ConvertTemperature(dFahrenheit);
             Console.Write("Temperature in degrees Celsius: ");
             Console.WriteLine(dCelsius.ToString());
          }
       }
    }
    

Vedere anche

Concetti

Creazione di client dei servizi Web XML

Altre risorse

Accesso a servizi Web in codice gestito