2013-01-16 65 views
17

從我的程序集中構建內部類對其他程序集是否可見是真的嗎?使內部類對其他程序集可見

我知道的AssemblyInfo文件和

[assembly: InternalsVisibleTo()] 

屬性。

但它不適用於我的情況。這樣做的主要目的是從LINQPAD製作可能的調用方法。所以這[assembly: InternalsVisibleTo("LINQPad")]不起作用。我不知道爲什麼。在我的項目中,我使用依賴解析器,並且很難在linqpad中做這樣的事情。任何建議?

+4

我強烈懷疑LINQPad是動態生成程序集 - 它可能不是需要訪問您的類型的LINQPad程序集本身。 –

+0

@Jon Skeet Autocomplete也不起作用。我想它是LINQPAD程序集。 – Neir0

+2

自動完成幾乎肯定是基於反思 - 我完全認爲它只能過濾到公共屬性。畢竟,LINQPad組件本身不包含*直接調用你的代碼,是嗎? –

回答

44

我剛剛上傳a new beta,允許這個工作。

添加以下的屬性您要LINQPad訪問其內部的庫:

[assembly: InternalsVisibleTo("LINQPadQuery")] 

您還需要啓用LINQPad的喜好此功能(編輯|偏好|高級)。

讓我知道你是如何相處的。

+0

適合我。有些時候我不得不恢復思考來訪問內部方法,所以這將是一個方便的功能,所以謝謝。 – sgmoore

+0

關於訪問級別的警告對我來說也沒有了,但是現在我明白了這一點:'不一致的可訪問性:基類'Database.Model.CustomDataContext'比類UserQuery''更難以訪問。你知道我如何解決這個問題嗎? CustomDataContext的簽名是'內部部分類CustomDataContext:DbContext' – SeriousM

+1

嘗試最新版本 - 我剛剛添加了一個解決方法 –

相關問題