InvalidTimeZoneException Costruttori

Definizione

Inizializza una nuova istanza della classe InvalidTimeZoneException.

Overload

InvalidTimeZoneException()

Inizializza una nuova istanza della classe InvalidTimeZoneException con un messaggio fornito dal sistema.

InvalidTimeZoneException(String)

Inizializza una nuova istanza della classe InvalidTimeZoneException con la stringa di messaggio specificata.

InvalidTimeZoneException(SerializationInfo, StreamingContext)

Inizializza una nuova istanza della classe InvalidTimeZoneException dai dati serializzati.

InvalidTimeZoneException(String, Exception)

Inizializza una nuova istanza della classe InvalidTimeZoneException con un messaggio di errore specificato e un riferimento all'eccezione interna che è la causa dell'eccezione corrente.

InvalidTimeZoneException()

Inizializza una nuova istanza della classe InvalidTimeZoneException con un messaggio fornito dal sistema.

public:
 InvalidTimeZoneException();
public InvalidTimeZoneException ();
Public Sub New ()

Commenti

Si tratta del costruttore senza parametri della InvalidTimeZoneException classe . Inizializza la proprietà della nuova istanza su un messaggio fornito dal sistema che descrive l'errore, ad esempio "È stata generata un'eccezione di tipo Message 'System.InvalidTimeZoneException'". Questo messaggio è localizzato per le impostazioni cultura correnti del sistema.

Si applica a

InvalidTimeZoneException(String)

Inizializza una nuova istanza della classe InvalidTimeZoneException con la stringa di messaggio specificata.

public:
 InvalidTimeZoneException(System::String ^ message);
public InvalidTimeZoneException (string message);
public InvalidTimeZoneException (string? message);
new InvalidTimeZoneException : string -> InvalidTimeZoneException
Public Sub New (message As String)

Parametri

message
String

Stringa che descrive l'eccezione.

Commenti

La stringa fornita come message parametro viene assegnata alla proprietà Message . Deve essere localizzato per le impostazioni cultura correnti.

Si applica a

InvalidTimeZoneException(SerializationInfo, StreamingContext)

Inizializza una nuova istanza della classe InvalidTimeZoneException dai dati serializzati.

protected:
 InvalidTimeZoneException(System::Runtime::Serialization::SerializationInfo ^ info, System::Runtime::Serialization::StreamingContext context);
protected InvalidTimeZoneException (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
new InvalidTimeZoneException : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> InvalidTimeZoneException
Protected Sub New (info As SerializationInfo, context As StreamingContext)

Parametri

info
SerializationInfo

Oggetto che contiene i dati serializzati.

context
StreamingContext

Flusso che contiene i dati serializzati.

Eccezioni

Il valore del parametro info è null.

-oppure- Il valore del parametro context è null.

Commenti

Questo costruttore non viene chiamato direttamente dal codice per creare un'istanza InvalidTimeZoneException dell'oggetto. Viene invece chiamato dal metodo IFormatter dell'oggetto durante la Deserialize deserializzazione InvalidTimeZoneException dell'oggetto da un flusso.

Si applica a

InvalidTimeZoneException(String, Exception)

Inizializza una nuova istanza della classe InvalidTimeZoneException con un messaggio di errore specificato e un riferimento all'eccezione interna che è la causa dell'eccezione corrente.

public:
 InvalidTimeZoneException(System::String ^ message, Exception ^ innerException);
public InvalidTimeZoneException (string message, Exception innerException);
public InvalidTimeZoneException (string? message, Exception? innerException);
new InvalidTimeZoneException : string * Exception -> InvalidTimeZoneException
Public Sub New (message As String, innerException As Exception)

Parametri

message
String

Stringa che descrive l'eccezione.

innerException
Exception

Eccezione che ha determinato l'eccezione corrente.

Esempio

Il codice seguente tenta di recuperare un oggetto che rappresenta il fuso orario TimeZoneInfo solare centrale. Se si verifica un oggetto nella chiamata al metodo, il gestore di eccezioni esegue il wrapping dell'eccezione in un nuovo oggetto , che InvalidTimeZoneException RetrieveTimeZone restituisce al InvalidTimeZoneException chiamante. Il gestore di eccezioni del chiamante visualizza quindi informazioni sulle eccezioni esterne e interne.

private void HandleInnerException()
{   
   string timeZoneName = "Any Standard Time";
   TimeZoneInfo tz;
   try
   {
      tz = RetrieveTimeZone(timeZoneName);
      Console.WriteLine("The time zone display name is {0}.", tz.DisplayName);
   }
   catch (TimeZoneNotFoundException e)
   {
      Console.WriteLine("{0} thrown by application", e.GetType().Name);
      Console.WriteLine("   Message: {0}", e.Message);
      if (e.InnerException != null)
      {
         Console.WriteLine("   Inner Exception Information:");
         Exception innerEx = e.InnerException;
         while (innerEx != null)
         {
            Console.WriteLine("      {0}: {1}", innerEx.GetType().Name, innerEx.Message);
            innerEx = innerEx.InnerException;
         }
      }            
   }   
}

private TimeZoneInfo RetrieveTimeZone(string tzName)
{
   try
   {
      return TimeZoneInfo.FindSystemTimeZoneById(tzName);
   }   
   catch (TimeZoneNotFoundException ex1)
   {
      throw new TimeZoneNotFoundException( 
            String.Format("The time zone '{0}' cannot be found.", tzName), 
            ex1);
   }          
   catch (InvalidTimeZoneException ex2)
   {
      throw new InvalidTimeZoneException( 
            String.Format("The time zone {0} contains invalid data.", tzName), 
            ex2); 
   }      
}
Private Sub HandleInnerException()
   Dim timeZoneName As String = "Any Standard Time"
   Dim tz As TimeZoneInfo
   Try
      tz = RetrieveTimeZone(timeZoneName)
      Console.WriteLine("The time zone display name is {0}.", tz.DisplayName)
   Catch e As TimeZoneNotFoundException
      Console.WriteLine("{0} thrown by application", e.GetType().Name)
      Console.WriteLine("   Message: {0}", e.Message)
      If e.InnerException IsNot Nothing Then
         Console.WriteLine("   Inner Exception Information:")
         Dim innerEx As Exception = e.InnerException
         Do
            Console.WriteLine("      {0}: {1}", innerEx.GetType().Name, innerEx.Message)
            innerEx = innerEx.InnerException
         Loop While innerEx IsNot Nothing
      End If            
   End Try   
End Sub

Private Function RetrieveTimeZone(tzName As String) As TimeZoneInfo
   Try
      Return TimeZoneInfo.FindSystemTimeZoneById(tzName)
   Catch ex1 As TimeZoneNotFoundException
      Throw New TimeZoneNotFoundException( _
            String.Format("The time zone '{0}' cannot be found.", tzName), _
            ex1) 
   Catch ex2 As InvalidTimeZoneException
      Throw New InvalidTimeZoneException( _
            String.Format("The time zone {0} contains invalid data.", tzName), _
            ex2) 
   End Try      
End Function

Commenti

In genere, questo overload della classe viene usato InvalidTimeZoneException per gestire un'eccezione in un oggetto try ...catch Blocco. Il innerException parametro deve essere un riferimento all'oggetto eccezione gestito nel blocco oppure può essere catch null . Questo valore viene quindi assegnato alla InvalidTimeZoneException proprietà InnerException dell'oggetto.

La message stringa viene assegnata alla proprietà Message . La stringa deve essere localizzata per le impostazioni cultura correnti.

Si applica a