As everyone else has said, it is useful for disambiguating types when you have to import multiple namespaces at the same time.
This seems to be against other people's opinions, but it may also be useful for clarifying scope between two domains:
using Gilco.Test.ProjectX;
using DevCode = Gilco.Nilfum.Alpha.ProjectX;
public class MyTests
{
public void TestCase1()
{
var car = new DevCode.Car();
var testCar = new TestCar();
}
}
It may also be useful in the rare case when you have to specify the namespace (for disambiguation), your namespace isn't so long to justify the alias, but is likely to change soon (like when you're using namespaces to support two versions of your code path simultaneously):
using DevCode = Gilco.V1;