いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

別のアセンブリでinternalクラスを見えるようにする (InternalsVisibleTo, 属性, AssemblyInfo.cs)

基本的な事なんですが、何回も忘れるのでメモメモ。
単体テスト(MS-Test)を作成する際、テスト対象のクラスがinternalだと
通常見えないのですが、InternalsVisibleTo属性を付与することで
みえるようになります。

InternalsVisibleTo属性はassemblyに対して付与するので
通常、AssemblyInfo.csに以下のように追加します。

[assembly: InternalsVisibleTo("XXX.Tests")]

これで、単体テストプロジェクト側からもinternalクラスがみえるようになります。
以下、参考情報です。


過去の記事については、以下のページからご参照下さい。

サンプルコードは、以下の場所で公開しています。