Home All Groups Group Topic Archive Search About

The type initializer for 'MyClass' threw an exception.

Author
25 Feb 2006 4:22 PM
ibiza
Hi all,

I have this class:

Public Class KanaConverter
   Private Shared kana As ArrayList
   Private Shared romanji As ArrayList

   Shared Sub New()
      kana = New ArrayList
      romanji = New ArrayList
      Dim r As Data.SqlClient.SqlDataReader = japDB.getHiragana()
      While r.Read()
         kana.Add(r("hiragana"))
         romanji.Add(r("hiragana_roman"))
      End While
   End Sub

   Shared Function KanaToRomanji(ByVal sIn As String) As String
      ...
   End Function
End Class

and when I do this in my page load:
      Dim s As String = KanaConverter.KanaToRomanji("がくせい")
it doesn't even get to the shared constructor and throws that exception
before :
      "The type initializer for 'KanaConverter' threw an exception."

What is it supposed to mean?

Author
25 Feb 2006 4:37 PM
Jon Skeet [C# MVP]
ibiza <lambe***@gmail.com> wrote:
> I have this class:

<snip>

> and when I do this in my page load:
>       Dim s As String = KanaConverter.KanaToRomanji("????")
> it doesn't even get to the shared constructor and throws that exception
> before :
>       "The type initializer for 'KanaConverter' threw an exception."
>
> What is it supposed to mean?

The "shared constructor" *is* the type initializer. If you catch the
TypeInitializationException, you can look at the inner exception to
find out what was wrong.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet   Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too