#533 – Alternate Notation for Extern Aliases

You can use identically named types that come from different assemblies by setting up an extern alias and then using that alias to qualify the type names.

Once you’ve set up an extern alias, there are two different syntax variations that you can use in qualifying type names from an aliased assembly. ¬†You can use either a colon (:) or a dot (.) after the alias.

    extern alias AnotherLib;

    class Program
        static void Main()
            // Syntax variant #1
            AnotherLib::DogLibrary.Dog d2 = new AnotherLib::DogLibrary.Dog("JRT", "Jack");

            // Syntax variant #2
            AnotherLib.DogLibrary.Dog d3 = new AnotherLib.DogLibrary.Dog("Rough Collie", "Lassie");