TimeZoneNotFoundException Constructors    
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Initializes a new instance of the TimeZoneNotFoundException class.
Overloads
| TimeZoneNotFoundException() | Initializes a new instance of the TimeZoneNotFoundException class with a system-supplied message. | 
| TimeZoneNotFoundException(String) | Initializes a new instance of the TimeZoneNotFoundException class with the specified message string. | 
| TimeZoneNotFoundException(SerializationInfo, StreamingContext) | 
		Obsolete.
	 Initializes a new instance of the TimeZoneNotFoundException class from serialized data. | 
| TimeZoneNotFoundException(String, Exception) | Initializes a new instance of the TimeZoneNotFoundException class with a specified error message and a reference to the inner exception that is the cause of this exception. | 
TimeZoneNotFoundException()
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
Initializes a new instance of the TimeZoneNotFoundException class with a system-supplied message.
public:
 TimeZoneNotFoundException();public TimeZoneNotFoundException();Public Sub New ()Remarks
This is the parameterless constructor of the TimeZoneNotFoundException class. This constructor initializes the Message property of the new instance to a system-supplied message that describes the error, such as "The time zone 'timeZoneName' was not found on the local computer." This message is localized for the current system culture.
Applies to
TimeZoneNotFoundException(String)
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
Initializes a new instance of the TimeZoneNotFoundException class with the specified message string.
public:
 TimeZoneNotFoundException(System::String ^ message);public TimeZoneNotFoundException(string? message);public TimeZoneNotFoundException(string message);new TimeZoneNotFoundException : string -> TimeZoneNotFoundExceptionPublic Sub New (message As String)Parameters
- message
- String
A string that describes the exception.
Remarks
The message string is assigned to the Message property. The string should be localized for the current culture.
Applies to
TimeZoneNotFoundException(SerializationInfo, StreamingContext)
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
Caution
This API supports obsolete formatter-based serialization. It should not be called or extended by application code.
Initializes a new instance of the TimeZoneNotFoundException class from serialized data.
protected:
 TimeZoneNotFoundException(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 TimeZoneNotFoundException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);protected TimeZoneNotFoundException(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}")>]
new TimeZoneNotFoundException : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> TimeZoneNotFoundExceptionnew TimeZoneNotFoundException : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> TimeZoneNotFoundExceptionProtected 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
Remarks
This constructor is not called directly by your code to instantiate the TimeZoneNotFoundException object. Instead, it is called by the IFormatter object's Deserialize method when deserializing the TimeZoneNotFoundException object from a stream.
Applies to
TimeZoneNotFoundException(String, Exception)
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
- Source:
- TimeZoneNotFoundException.cs
Initializes a new instance of the TimeZoneNotFoundException class with a specified error message and a reference to the inner exception that is the cause of this exception.
public:
 TimeZoneNotFoundException(System::String ^ message, Exception ^ innerException);public TimeZoneNotFoundException(string? message, Exception? innerException);public TimeZoneNotFoundException(string message, Exception innerException);new TimeZoneNotFoundException : string * Exception -> TimeZoneNotFoundExceptionPublic 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 example tries to retrieve a nonexistent time zone, which throws a TimeZoneNotFoundException. The exception handler wraps the exception in a new TimeZoneNotFoundException object, which the exception handler returns to the caller. The caller's exception handler then displays information about both the outer and inner exception.
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); 
   }      
}
open System
let retrieveTimeZone tzName =
    try
        TimeZoneInfo.FindSystemTimeZoneById tzName
    with 
    | :? TimeZoneNotFoundException as ex1 ->
        raise (TimeZoneNotFoundException($"The time zone '{tzName}' cannot be found.", ex1) )
    | :? InvalidTimeZoneException as ex2 ->
        raise (InvalidTimeZoneException($"The time zone {tzName} contains invalid data.", ex2) )
let handleInnerException () =
    let timeZoneName = "Any Standard Time"
    try
        let tz = retrieveTimeZone timeZoneName
        printfn $"The time zone display name is {tz.DisplayName}."
    with :? TimeZoneNotFoundException as e ->
        printfn $"{e.GetType().Name} thrown by application"
        printfn $"   Message: {e.Message}" 
        if e.InnerException <> null then
            printfn "   Inner Exception Information:"
            let rec printInner (innerEx: exn) =
                if innerEx <> null then
                    printfn $"      {innerEx.GetType().Name}: {innerEx.Message}"
                    printInner innerEx.InnerException
            printInner e
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 TimeZoneNotFoundException overload to handle an exception in a try…catch 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 TimeZoneNotFoundException object's InnerException property.
The message string is assigned to the Message property. The string should be localized for the current culture.