Можно ли устранить неоднозначность имени конфликтующего типа в объявлении using?
например,System.Threading и System.Timers присвоен класс Timer. Поэтому, если я хотел бы использовать System.Timers.Timer в классе, который использует System.Threading, Я должен использовать такие вещи, как
System.Timers.Timer myTimer = new System.Timers.Timer();
каждый раз, когда я хочу объявлять/инициализировать таймеры. Есть ли способ сказать компилятору ,что " всякий раз, когда я говорю Timer используйте System.Timers.Timer если не заявлено иное?- Чтобы я мог пользоваться простым!--12-->
Timer t = new Timer();
в случаях, по умолчанию означает System.Timers.Timer, если я не укажу явно
System.Threading.Timer t2 = new System.Threading.Timer();
3 ответов
вы можете создать псевдоним для типа (или пространства имен). См.использование директивы (MSDN)
using TimersTimer = System.Timers.Timer;
....
var myTimer = new TimersTimer();
Да.
using System.Threading;
using System.Timers;
using Timer = System.Timers.Timer;
Теперь Timer относится к System.Timers.Timer, но все остальное из любого пространства имен по-прежнему доступно без префикса.
посмотреть директива using
using MyAlias = System.Timers.Timer;
var foo = new MyAlias();