C# has a static constructor for this purpose.
static class YourClass { static YourClass() { // perform initialization here } }
A static constructor is used to initialize any static data, or to perform a particular action that needs to be performed once only. It is called automatically before the first instance is created or any static members are referenced