Подтвердить что ты не робот

Каким будет свойство Aliases ссылок на сборки в Visual Studio 8

Когда я добавляю ссылку на сборку проекта в Visual Studio 8, свойство "Псевдонимы" этой ссылки устанавливается на "глобальный". Для чего это свойство полезно и почему оно установлено в глобальном?

MSDN сообщает мне, что это список псевдонимов для сборки, но не почему я могу использовать это свойство или почему большинство из них псевдонимы как "глобальные".

Ссылка MSDN

4b9b3361

Ответ 1

Это для "внешних псевдонимов". Предположим, вы хотите использовать два разных типа, оба из которых называются Foo.Bar (т.е. Bar в пространстве имен Foo). Эти два типа будут находиться в разных сборках (по определению) - вы используете свойство в VS для связывания псевдонима с каждой ссылкой, а затем можете:

extern alias FirstAlias;
extern alias SecondAlias;

using FirstBar = FirstAlias::Foo.Bar;
using SecondBar = SecondAlias::Foo.Bar;

а затем используйте FirstBar и SecondBar в вашем коде.

Итак, в основном это дополнительный уровень именования - и вы не должны его использовать, если вам действительно не нужно. Это смутит многих людей. Старайтесь не вникать в эту ситуацию в первую очередь - но будьте в курсе этого решения в те времена, когда вы просто не можете этого избежать.

Ответ 2

Искать " extern alias"; это очень редко используемая функция, которая необходима только для устранения неоднозначности между двумя dll, которые вносят одни и те же типы (например, две разные версии одной и той же сборки или две сборки, у которых есть класс, который имеет полное имя).

"global" является значением по умолчанию. Например, если у вас есть класс с именем Foo.System, вы можете однозначно обратиться к основному пространству имен System через global::System.