Visual Studio 8의 어셈블리 참조의 별칭 속성은 어떤 용도로 사용됩니다.

StackOverflow https://stackoverflow.com/questions/286632

문제

Visual Studio 8의 프로젝트에 대한 어셈블리 참조를 추가하면 해당 참조의 별명 속성이 "Global"으로 설정됩니다. 이 속성은 무엇이며 왜 글로벌로 설정됩니까?

MSDN은 이것이 어셈블리의 별칭 목록이지만이 속성을 사용하고 싶은 이유 또는 대부분 "글로벌"으로 사용되는 이유는 아니라고 말합니다.

MSDN 참조

도움이 되었습니까?

해결책

이것은 "외부 별칭"을위한 것입니다. 두 가지 다른 유형을 사용하고 싶다고 가정합니다. Foo.Bar (즉 Bar 네임 스페이스에서 Foo). 두 가지 유형은 다른 어셈블리에 있습니다 (정의별로) - 귀하는 각 참조와 별명을 연결하기 위해 VS의 속성을 사용하여 다음을 수행 할 수 있습니다.

extern alias FirstAlias;
extern alias SecondAlias;

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

그리고 사용하십시오 FirstBar 그리고 SecondBar 코드에서.

따라서 기본적으로 그것은 명명의 추가 수준입니다. 그리고 당신은 실제로 당신이 정말로 필요하지 않으면 그것을 사용해서는 안됩니다. 그것은 많은 사람들을 혼란스럽게 할 것입니다. 처음에는 그 상황에 빠지지 않도록 노력하십시오. 그러나 피할 수없는 시간 동안이 솔루션을 알고 있어야합니다.

다른 팁

"검색"외부 별칭"; 동일한 유형에 기여하는 두 개의 DLL 사이에 분해하는 데 필요한 매우 드물게 사용되는 기능입니다 (예 : 동일한 어셈블리의 두 가지 버전 또는 완전히 자격을 갖춘 이름을 공유하는 클래스가있는 두 개의 어셈블리 ).

"글로벌"이 기본값입니다. 예를 들어, 전화 수업이있는 경우 Foo.System, 당신은 메인을 명확하게 언급 할 수 있습니다 System 네임 스페이스를 통해 global::System.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top