You have to present your implementation of IExternalCommand, you programming language for anyone to understand.
e.g. in properties of the project you have an option for default namespace in C# and Root namespace in VB.Net. I believe they are treated differently since in C# source code the namespace statement is generally added when you create a new class (taking the default). However in VB.Net the statement isn't added but is placed under the Root regardless of the missing statement.
So you may be one dot away from your correct entry point location, have a look in ILDASM.