The only situation I can think of in which you should use aliases in a form where you could use the class name is to determine the types of enums:
public enum MyEnum:Byte
Note also that you must use the alias keyword to define an enumeration, while when defining code members that can be of any numbered type, you use the Enum class name.
Finally, you can never specify System.ValueType as the base class or type parameter of the type; instead, you use the struct keyword, which is essentially an alias for an object derived from ValueType.
source share