WebRequest.Timeout Proprietà

Definizione

Ottiene o imposta l'intervallo di tempo, espresso in millisecondi, prima del timeout della richiesta.

public:
 virtual property int Timeout { int get(); void set(int value); };
public virtual int Timeout { get; set; }
member this.Timeout : int with get, set
Public Overridable Property Timeout As Integer

Valore della proprietà

Periodo di tempo, espresso in millisecondi, fino al timeout della richiesta o al valore Infinite per indicare che la richiesta non raggiunge il timeout. Il valore predefinito è definito dalla classe discendente.

Eccezioni

Qualsiasi tentativo viene effettuato per ottenere o impostare la proprietà, quando la proprietà non viene sottoposta a override in una classe discendente.

Esempio

Nell'esempio seguente la proprietà Timeout viene impostata su 10000 millisecondi. Se il periodo di timeout scade prima che la risorsa possa essere restituita, viene generata una WebException.

// Create a new WebRequest Object to the mentioned URL.
WebRequest^ myWebRequest = WebRequest::Create( "http://www.contoso.com" );
Console::WriteLine( "\nThe Timeout time of the request before setting is : {0} milliseconds", myWebRequest->Timeout );

// Set the 'Timeout' property in Milliseconds.
myWebRequest->Timeout = 10000;

// This request will throw a WebException if it reaches the timeout limit
// before it is able to fetch the resource.
WebResponse^ myWebResponse = myWebRequest->GetResponse();

         // Create a new WebRequest Object to the mentioned URL.
WebRequest myWebRequest=WebRequest.Create("http://www.contoso.com");
Console.WriteLine("\nThe Timeout time of the request before setting is : {0} milliseconds",myWebRequest.Timeout);

// Set the 'Timeout' property in Milliseconds.
myWebRequest.Timeout=10000;

// This request will throw a WebException if it reaches the timeout limit before it is able to fetch the resource.
         WebResponse myWebResponse=myWebRequest.GetResponse();

   ' Create a new WebRequest Object to the mentioned URL.
   Dim myWebRequest As WebRequest = WebRequest.Create("http://www.contoso.com")
   Console.WriteLine(ControlChars.Cr + "The Timeout time of the request before setting is : {0} milliseconds", myWebRequest.Timeout)

   ' Set the 'Timeout' property in Milliseconds.
myWebRequest.Timeout = 10000

  ' Assign the response object of 'WebRequest' to a 'WebResponse' variable.
   Dim myWebResponse As WebResponse = myWebRequest.GetResponse()

Commenti

Cautela

WebRequest, HttpWebRequest, ServicePointe WebClient sono obsoleti e non è consigliabile usarli per nuovi sviluppi. Usare invece HttpClient.

La proprietà Timeout indica il periodo di tempo, espresso in millisecondi, fino al timeout della richiesta e genera un WebException. La proprietà Timeout influisce solo sulle richieste sincrone effettuate con il metodo GetResponse. Per timeout delle richieste asincrone, usare il metodo Abort.

Nota

La classe WebRequest è una classe abstract. Il comportamento effettivo delle istanze di WebRequest in fase di esecuzione è determinato dalla classe discendente restituita dal metodo WebRequest.Create. Per altre informazioni sui valori predefiniti e sulle eccezioni, vedere la documentazione per le classi discendenti, ad esempio HttpWebRequest e FileWebRequest.

Note per gli eredi

Le classi discendenti segnalano un timeout generando un WebException con il campo Status impostato su Timeout. Quando Timeout è impostato su Infinite la classe discendente non scade.

Si applica a

Vedi anche