WebRequest.Timeout Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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
, ServicePoint
e 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.