Можно ли устранить неоднозначность имени конфликтующего типа в объявлении 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();