You still shouldn't have to be defining the classes yourself. The SDK is a bit out of date with regards to the .Net samples. For future development, we have provided a .Net assembly with all the iControl interfaces and objects bundled up for you. Go to the Download.Labs page and select the iControl Assembly. By clicking on the "Discussions and Downloads" link you can get the iControl Assembly for .Net. In your VS.Net project, just select "Add Reference" and point it to the downloaded iControl.dll and you can access all the iControl interfaces and methods from a newly instantiated iControl.Interfaces object. The code looks something like this
iControl.Interfaces interfaces = new iControl.Interfaces();
interfaces.initialize("bigip_addr", "username", "password");
string [] vip_list = interfaces.LocalLBVirtualServer.get_list();
This will help avoid a lot of issues in the future.
-Joe