0

Visual Studio プロジェクトをコンパイルするときに、すべてのパブリック変数変数/メソッド/クラスを内部にしたいと考えています。ソースコードは変更されませんが、コンパイルされたライブラリが完了すると、内部アクセスのみが必要になります。これは可能ですか?

すべてのプロジェクトのアセンブリ情報ファイルに "InternalsVisibleTo("ClassLibrary") " を設定しましたが、"public" を "internal" にすべて置換したくありません。このあたりにアウェイがあるかどうか知っている人はいますか?そのため、プロジェクトをコンパイルしてビルドすると、リリース プロジェクトは内部アクセスのみを許可します。

ありがとう。良い一日を、

ジョー

4

1 に答える 1

1

InternalsVisibleTo属性の使い方を誤解していると思います。別のアセンブリ内のコードが として宣言された型とメンバーにアクセスできるようにするために使用されinternalます。

AssemblyA があり、その中に があるとしますinternal class SomeClass。次に、AssemblyB があります。AssemblyB のコードは AssemblyAにあるためSomeClass、 を使用できませんinternal。次に、AssemblyA で、AssemblyBが AssemblyA の型とメンバーInternalsVisibleToを使用するためのアクセスを許可するために使用できます。internal

単純にコードを AssemblyA の内部にする場合は、最初からそれに応じて型を宣言する必要があります。そのための近道はありません。

于 2010-04-09T10:44:24.033 に答える