Ссылаться на пространства имен глобально? - PullRequest
3 голосов
/ 04 июня 2009

Есть ли способ ссылаться на пространство имен глобально по всему решению?

Таким образом, вместо наличия этих строк в каждом файле кода:

using System;
using MyNamespace;

необходимо объявить их только один раз, и каждый файл кода будет использовать их.

Кстати, я использую Visual Studio.

Ответы [ 5 ]

6 голосов
/ 04 июня 2009

Нет, C # не имеет этой концепции. Каждый исходный файл независим в этом отношении. (И если директивы using находятся в объявлении пространства имен, они также не зависят от других директив using в объявлениях одноранговых пространств имен. Это довольно редкий случай, хотя в моем опыте.)

Вам не нужен ReSharper, чтобы изменить то, что включается в новый класс. Вы можете использовать шаблоны Visual Studio .

РЕДАКТИРОВАТЬ: просто чтобы прояснить вопрос об использовании директив в пространствах имен, предположим, что у нас было (все в одном файле):

using Foo;

namespace X
{
    using Bar;
    // Foo and Bar are searched for code in here, but not Baz
}

namespace Y
{
    using Baz;
    // Foo and Baz are searched for code in here, but not Bar
}

Обычно у меня есть только одно объявление пространства имен в файле, и перед ним ставятся все директивы using.

4 голосов
/ 04 июня 2009

Нет, это невозможно.

Если вы используете ReSharper , вы можете установить опцию включения определенных директив using в каждый новый файл, который вы создаете.

2 голосов
/ 04 июня 2009

Из этого ТАКого вопроса и последующего сообщения в блоге . Вы можете редактировать шаблоны Visual Studio по умолчанию.

Для этого посмотрите файл в этом zip-файле: [Program Files] [Visual Studio] \ Common7 \ IDE \ ItemTemplates \ CSharp \ Code \ 1033 \ Class.zip

и измените файл Class.cs по мере необходимости. Кроме того, Visual Studio может кэшировать этот файл здесь: [Программные файлы] [Visual Studio] \ Common7 \ IDE \ ItemTemplatesCache \ CSharp \ Code \ 1033 \ Class.zip

0 голосов
/ 04 августа 2011

Один трюк, который я пропускаю как новичок в CSharp, - это посмотреть на «refences» (в VS), щелкнуть правой кнопкой мыши и «Добавить новую ссылку». Это особенно удобно при объединении нескольких проектов, в которых я создал общий класс для повторного использования в других местах.

0 голосов
/ 05 июня 2009

Как уже упоминали другие, шаблоны Visual Studio - это путь.

Обратите внимание, что простое добавление оператора using в ваш шаблон не гарантирует, что компилятор сможет разрешать ваши типы. Таким образом, если вы добавляете оператор using для MyNamespace в каждом классе, вам может понадобиться добавить ссылку на сборку в ваш проект. См. C # FAQ для получения дополнительной информации.

...