Check documentation for this question:
https://msdn.microsoft.com/en-us/library/aa664765(v=vs.71).aspx
It says:
The order in which using-alias-directives are written has no
significance, and resolution of the namespace-or-type-name referenced
by a using-alias-directive is not affected by the
using-alias-directive itself or by other using-directives in the
immediately containing compilation unit or namespace body. In other
words, the namespace-or-type-name of a using-alias-directive is
resolved as if the immediately containing compilation unit or
namespace body had no using-directives. In the example
namespace N1.N2 {}
namespace N3
{
using R1 = N1; // OK
using R2 = N1.N2; // OK
using R3 = R1.N2; // Error, R1 unknown
}
the last using-alias-directive results in a compile-time error because
it is not affected by the first using-alias-directive.
Technically, you cannot do it same namespace, but if you do alias in namespace 1, and do alias for this alias in a nested namespace, it will work:
namespace N1
{
namespace N12 { }
}
namespace N2
{
using R1 = N1;
namespace N2
{
using R2 = R1.N12;
}
}
I am not really sure it's worth using aliases in your specific example, consider using them as rare as you can, mostly for resolving namespace conflicts.