iTextSharp程序集在覈心程序集中包含BouncyCastle名稱空間,但我正在使用的VB.Net應用程序已經使用了不同版本的BouncyCastle。我認爲C#可以通過使用「extern別名」來解決這個問題,但是我無法在VB.NET中找到這個方法。使用VB.NET在兩個程序集中定義的相同名稱空間的解決方法
在VB.Net中是否有任何等價的extern別名或者從特定程序集中排除特定名稱空間的任何其他方式?
iTextSharp程序集在覈心程序集中包含BouncyCastle名稱空間,但我正在使用的VB.Net應用程序已經使用了不同版本的BouncyCastle。我認爲C#可以通過使用「extern別名」來解決這個問題,但是我無法在VB.NET中找到這個方法。使用VB.NET在兩個程序集中定義的相同名稱空間的解決方法
在VB.Net中是否有任何等價的extern別名或者從特定程序集中排除特定名稱空間的任何其他方式?
您可以別名的命名空間中導入這樣的:
Imports [ aliasname = ] namespace
-or-
Imports [ aliasname = ] namespace.element
IE
Imports strbld = System.Text.StringBuilder
Imports dirinf = System.IO.DirectoryInfo
Public Function GetFolders() As String
Dim sb As New strbld
Dim dInfo As New dirinf("c:\")
For Each dir As dirinf In dInfo.GetDirectories()
sb.Append(dir.Name)
sb.Append(ControlChars.CrLf)
Next
Return sb.ToString
End Function
全信息
請參閱MSDN參考:http://msdn.microsoft.com/en-us/library/7f38zh8x.aspx
我認爲這個解決方案是使用來自不同名稱空間的相同命名的類,我的問題是在兩個不同的程序集中定義了相同的名稱空間。 – Rattle
你問如何使用2個不同的版本在你的應用程序中相同的程序集?如果不是,則答案是不要全局導入名稱空間,而是每次都引用完整路徑。例如,TEXT是一個流行的命名空間,它存在於許多程序集中。當我想要像StringBuilder程序集這樣的東西時,我必須以全名「System.Text.StringBuilder」作爲示例。這是你需要什麼? – Steve
你第一次是對的 - 應用程序需要使用相同類的兩個不同版本,但類在兩個不同的程序集中定義。目前,我似乎只能在整個應用程序中使用第二個版本。 – Rattle