2009-09-16 53 views
1

我在我的代碼中使用第三方.net dll,當我從VB.Net應用程序添加對此dll的引用時,它顯示了intellisense和對象瀏覽器中的不同類比當我在C#項目中使用它。爲什麼會有這種差異?爲什麼相同的dll暴露不同的類在C#和.net

編輯

如果設計者所預期的這種方式我想知道如何做到這一點我自己的DLL。

+0

你的意思是不同的? C#顯示類A,B,C和vb.net顯示D,E,F嗎?還是說vb.net比c#顯示更少的類? – shahkalpesh 2009-09-16 17:03:54

+0

@shahkalpesh VB.Net項目中顯示的類是C#項目中顯示的類的子集。 – Raminder 2009-09-16 17:10:37

回答

3

不知道具體情況,很難說。浮現在腦海中的一些可能性:

  • 設計師做是故意這樣的庫
  • 零件不符合CLR,因此沒有比它寫在一個其他語言可見
1

VB.NET提供了「隱藏高級成員」的選項。也許這是你沒有看到的「高級」成員。

+0

如果OP回答我提出的問題,情況可能如此。 – shahkalpesh 2009-09-16 17:06:47

0

這裏要記住的一件事是,intellisense是程序中所允許的和合法的近似值。它的目標是非常接近真實,但往往不是。有幾個原因,一個特定類型可能會或可能不會在智能感知出現,但確實在C#

  • 其中2個項目可能與目標裝配朋友
  • 智能感知過濾器可以存在於文檔文件的哪從智能感知隱藏他們的類型
  • 某些種類可能會隱藏
  • 屬性過濾器,由於考慮到它也不會SH在名稱

情況下,只有差異在對象瀏覽器中,我的猜測是該類有智能感知或屬性過濾器,導致它被VB.Net隱藏。

+0

忘記朋友集會,因爲它的第三方DLL。 – Raminder 2009-09-16 17:11:32

相關問題