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 に自分のメソッドが表示されません。

メソッドを公開または動的にしたくありません。これを行う方法に関するアイデアはありますか??

ありがとう

テオ

4

1 に答える 1

0

Friend Assemblie に関する MSDN のドキュメントから:

別のアセンブリ (アセンブリ A) の内部型または内部メンバーにアクセスするアセンブリ (アセンブリ B) をコンパイルするときは、/out コンパイラ オプションを使用して出力ファイル (.exe または .dll) の名前を明示的に指定する必要があります (/を参照)。詳細についてはアウト)。これが必要になるのは、コンパイラが外部参照にバインドする時点で、ビルド中のアセンブリの名前をまだ生成していないためです。

ソース: https://msdn.microsoft.com/library/0tke9fxk(en-us,vs.80).aspx

コンパイラ オプションを確認し、両方のアセンブリを再構築します。

于 2013-06-25T13:00:27.080 に答える