Mam projekt biblioteki klas vb.net 3.5, który musi odwoływać się do dwóch złożeń, które mają tę samą przestrzeń nazw. Mamy dwie trzecie dll, w których jedna jest wersja 5.1, a druga wersja 6.1. Mają tę samą nazwę pliku dll i używają tej samej nazwy przestrzeni nazw i funkcji/klasy. Projekt musi korzystać z jednego lub drugiego w zależności od konkretnej sytuacji.Referencyjne biblioteki dll 2 używające tej samej przestrzeni nazw w projekcie vb.net 3.5?
Sprawdziłem na proces C#, który używa funkcji "extern alias", aby pobrać różne zespoły.
http://blogs.msdn.com/b/ansonh/archive/2006/09/27/774692.aspx
What use is the Aliases property of assembly references in Visual Studio 8
Wydaje się, że ta funkcja nie jest w pełni dostępny dla VB.NET.
miejsca Próbowałem
Mam przemianowany 2nd dll i dodaje odniesienie zarówno do mojego projektu. W tym momencie dostaję ton: 'blah' is ambiguous in the namespace
.
Muszę więc wymienić różne wersje. W VB.NET można zrobić aliasy na rachunku jak importu:
Imports version5 = Somedll.Something
Problemem jest to, że nie można skonfigurować alias odniesienia montażu dla różnych wersji DLL. Najwyraźniej w vb.net nie można ustawić ich w oknie właściwości referencyjnych. Tak próbowałem, ustawiając je w moim pliku projektu tak:
<Reference Include="somedll.5.Navigation">
<HintPath>..\..\Utility\ThirdPartyDLLS\somedll.5.dll</HintPath>
<Aliases>SomeDLL5</Aliases>
<Private>False</Private>
</Reference>
<Reference Include="somedll.6.Navigation, Version=6.1.0.0, Culture=neutral, PublicKeyToken=6d02be8724ca751c, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\Utility\ThirdPartyDLLS\somedll.6.dll</HintPath>
<Aliases>SomeDLL6</Aliases>
<Private>False</Private>
</Reference>
bym wtedy spodziewać się to do pracy:
Imports version5 = SomeDLL5.Something
Imports version6 = SomeDLL6.Something
Ale „SomeDLL5/6” nie pojawi się w intellisense. Więc jak mogę odwołać się do obu bibliotek dll w tym samym projekcie?
To możliwe, że to tylko błąd w IntelliSense. To nie jest scenariusz, który jest mocno przetestowany AFAIK. Czy próbowałeś skompilować i zdobyć błędy? – JaredPar
Otrzymuję zielone zawijanie: Przestrzeń nazw lub typ określony w imporcie nie zawiera żadnego elementu publicznego lub nie można go znaleźć. Upewnij się, że przestrzeń nazw lub typ jest zdefiniowany i zawiera co najmniej jeden element publiczny. Upewnij się, że nazwa importowanego elementu nie zawiera żadnych aliasów. –