Какое использование имеет свойство Aliases ссылок на сборки в Visual Studio 8
когда я добавляю ссылку на сборку в проект в Visual Studio 8, свойство Aliases этой ссылки имеет значение "global". Что это за свойство и почему оно к глобальным?
MSDN говорит мне, что это список псевдонимов для сборки, но не то, почему я могу использовать это свойство или почему большинство псевдонимов являются "глобальными".
2 ответа:
это для "внешних псевдонимов". Предположим, вы хотите использовать два разных типа, оба из которых называются
Foo.Bar
(т. е.Bar
в пространстве именFoo
). Два типа будут находиться в разных сборках (по определению) - вы используете свойство в VS, чтобы связать псевдоним с каждой ссылкой, тогда вы можете сделать:extern alias FirstAlias; extern alias SecondAlias; using FirstBar = FirstAlias::Foo.Bar; using SecondBar = SecondAlias::Foo.Bar;
и затем использовать
FirstBar
иSecondBar
в коде.так что в основном это дополнительный уровень именования - и вы не должны использовать его, если вы действительно, на самом деле нужно. Это смутит многих людей. Старайтесь избегать попадания в эту ситуацию в первую очередь - но помните об этом решении для тех случаев, когда вы просто не можете этого избежать.
Поиск " extern alias"; это очень редко используемая функция, которая необходима только для устранения неоднозначности между двумя библиотеками DLL, которые предоставляют одни и те же типы (например, две разные версии одной сборки или две сборки, имеющие класс с общим полным именем).
"global" - это значение по умолчанию. Например, если у вас есть класс с именем
Foo.System
, можно однозначно ссылаться на главноеSystem
пространство имен черезglobal::System
.