2013-06-25 42 views
0

我找不到任何解決我的問題是:撥打內部靜態方法可見的另一個組件

public static class1 
{ 
    private static void Method() 
    { 
     //Implementation 

我要訪問的方法在另一個組件,我試圖把

using System.Runtime.CompilerServices; 
[assembly: InternalsVisibleTo("MyAssembly2")] 

public static class1 
    { 
     internal static void Method() 
     { 
      //Implementation 

但我在MyAssembly2中看不到我的方法。

我不想讓我的方法公開或動態。 關於如何做到這一點的任何想法?

由於

西奧

+0

您想要從第二部件訪問靜態方法。 –

+0

也許這是一個設計問題?你不能把所有的課程放在一個程序集中嗎? –

+3

是否有任何組件被簽名? – Patko

回答

0

從MSDN對朋友Assemblie文檔:

當編譯的組件(組件B)將要訪問的內部類型或另一組件(組件A)的內部構件,您必須使用/ out編譯器選項明確指定輸出文件的名稱(.exe或.dll)(有關詳細信息,請參閱/ out)。這是必需的,因爲編譯器在綁定到外部引用時尚未生成正在構建的程序集的名稱。

來源:https://msdn.microsoft.com/library/0tke9fxk(en-us,vs.80).aspx

檢查你的編譯器選項和重建這兩個組件。

相關問題