2

作成された単体テストに問題があります。2つのプロジェクトがあります。1つは「実際の」プロジェクトであり、もう1つはユニットテストプロジェクトです。実際のプロジェクトでメソッドをクリックした後、「単体テストの作成」を選択します。次に、testprojectで単体テストのコードを取得しました。

今、コンパイルした後、私は次のエラーメッセージを受け取ります:

フレンドアセンブリ参照'ASSEMBLYNAME'が無効です。厳密な名前で署名されたアセンブリは、InternalsVisibleTo宣言で公開鍵を指定する必要があります。

次に、実プロジェクトのAssemblyInfo.csのInternalsVisibleTo-Declarationに公開鍵を追加しました。しかし今、私は内部で封印されている実プロジェクトの各クラスのコンパイルエラーを受け取ります。メッセージは次のとおりです。

「CLASSNAME」は保護レベルのためアクセスできません

これを修正するにはどうすればよいですか?何か案は?

4

2 に答える 2

1

アセンブリの名前を入力し、次にコンマとPublicKeyを入力します。AssemblyInfoファイルに貼り付けるときは、公開鍵の改行などを忘れずに削除してください。

[assembly: InternalsVisibleTo("AssemblyName, PublicKey=xxx")]
于 2012-07-31T13:28:15.187 に答える
0

Yes I added the public-key-token. It looks like the following:

[assembly: InternalsVisibleTo("NAMESPACE, PublicKey=00240000048000009 40000000602000000240000525341310004000001000100354f0966de4a992baa1ed0f2 faf643f86fd2c74aee8b9dc6c0321f9d658166658ec154aaed70ab4b92a21a3c1e7e53 200232043c0d0b791496fd0201d21f18433ee9507022f2a72829d1dd32b106f86c68e 620d2a39f02f3a8b82aa23196ef7f7f4880020dd340dd2dfecdd1b3051b1e659c9e18c 8e21cc90bc33de306712b86")]
于 2012-07-31T13:04:05.503 に答える