Действительно ли возможно объявить псевдоним с типом .NET? в c# и раз так как?
Например:
using MatchBuilderFactoryFunc = System.Func<
IndexerBase.RequestMatching.RequestFreeTextAnalyzeParameter,
System.Collections.Generic.IEnumerable<
IndexerBase.RequestMatching.IMatchBuilder>>;
И после всего использовать его как простой тип:
MatchBuilderFactoryFunc f = ...
using XDoc = System.Xml.Linq.XDocument;
Однако, он сохраняется только для компиляции одного файла C#. Вы не можете экспортировать этот псевдоним.
Как говорили другие, используйте "using alias = type;" форма директивы using.Пара замечаний по этому поводу:
1) Это должно быть первое, что есть в файле или пространстве имен. (Если, конечно, у вас нет директив extern alias ; они идут перед директивами using.)
2) Псевдоним не является истинным типом. Многие люди хотели бы видеть:
using PopsicleCount=System.Int32;
using GiraffeCount=System.Int32;
...
PopsicleCount p = 123;
GiraffeCount g = p; // ERROR, can't convert a count of giraffes into a count of popsicles
Но мы не поддерживаем эту функцию. Это настоящий псевдоним; мы просто заменяем псевдоним идентификатора типом alising, когда видим его; p и g имеют тип int.
3) Псевдоним применяется только в том файле или объявлении пространства имен, в котором он появляется. Если вы хотите использовать псевдоним в каждом файле в вашей программе, вам придется записать его в каждый файл в вашей программе.
4) Псевдонимы не могут быть параметризованы на стороне псевдонима, хотя они могут быть закрытыми универсальными типами на стороне типа. То есть это допустимо:
using GiraffeList = System.Collections.Generic.List<Giraffe>;
, но не:
using Frobtionary<T> = System.Collections.Generic.Dictionary<Frob, T>;
Да. Используйте директиву using
.
Если вы выполните поиск по термину "c# alias", вы также легко найдете ответ.