InvalidTimeZoneException Constructors

Definition

Initializes a new instance of the InvalidTimeZoneException class.

Overloads

InvalidTimeZoneException()

Initializes a new instance of the InvalidTimeZoneException class with a system-supplied message.

InvalidTimeZoneException(String)

Initializes a new instance of the InvalidTimeZoneException class with the specified message string.

InvalidTimeZoneException(SerializationInfo, StreamingContext)
Obsolete.

Initializes a new instance of the InvalidTimeZoneException class from serialized data.

InvalidTimeZoneException(String, Exception)

Initializes a new instance of the InvalidTimeZoneException class with a specified error message and a reference to the inner exception that is the cause of this exception.

InvalidTimeZoneException()

Initializes a new instance of the InvalidTimeZoneException class with a system-supplied message.

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

Remarks

This is the parameterless constructor of the InvalidTimeZoneException class. It initializes the Message property of the new instance to a system-supplied message that describes the error, such as "Exception of type 'System.InvalidTimeZoneException' was thrown." This message is localized for the current system culture.

Applies to

InvalidTimeZoneException(String)

Initializes a new instance of the InvalidTimeZoneException class with the specified message string.

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

Parameters

message
String

A string that describes the exception.

Remarks

The string supplied as the message parameter is assigned to the Message property. It should be localized for the current culture.

Applies to

InvalidTimeZoneException(SerializationInfo, StreamingContext)

Caution

This API supports obsolete formatter-based serialization. It should not be called or extended by application code.

Initializes a new instance of the InvalidTimeZoneException class from serialized data.

protected:
 InvalidTimeZoneException(System::Runtime::Serialization::SerializationInfo ^ info, System::Runtime::Serialization::StreamingContext context);
protected InvalidTimeZoneException (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
[System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
protected InvalidTimeZoneException (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
new InvalidTimeZoneException : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> InvalidTimeZoneException
[<System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new InvalidTimeZoneException : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> InvalidTimeZoneException
Protected Sub New (info As SerializationInfo, context As StreamingContext)

Parameters

info
SerializationInfo

The object that contains the serialized data.

context
StreamingContext

The stream that contains the serialized data.

Attributes

Exceptions

The info parameter is null.

-or-

The context parameter is null.

Remarks

This constructor is not called directly by your code to instantiate the InvalidTimeZoneException object. Instead, it is called by the IFormatter object's Deserialize method when deserializing the InvalidTimeZoneException object from a stream.

Applies to

InvalidTimeZoneException(String, Exception)

Initializes a new instance of the InvalidTimeZoneException class with a specified error message and a reference to the inner exception that is the cause of this exception.

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)

Parameters

message
String

A string that describes the exception.

innerException
Exception

The exception that is the cause of the current exception.

Examples

The following code tries to retrieve a TimeZoneInfo object that represents the Central Standard Time zone. If an InvalidTimeZoneException occurs in the RetrieveTimeZone method call, the exception handler wraps the exception in a new InvalidTimeZoneException object, which it returns to the caller. The caller's exception handler then displays information about both the outer and inner exceptions.

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

Remarks

Typically, you use this overload of the InvalidTimeZoneException class to handle an exception in a trycatch block. The innerException parameter should be a reference to the exception object handled in the catch block, or it can be null. This value is then assigned to the InvalidTimeZoneException object's InnerException property.

The message string is assigned to the Message property. The string should be localized for the current culture.

Applies to