I have some auto-instantiation code which I would like to apply to about 15 properties in a fairly big class. The code is similar to the following but the type is differ
Even though it doesn't directly solve your problem, you could have a look at the new Lazy class that ships with .NET 4.0. It is specifically designed for lazy initialization scenarios.