2 つの異なるプロジェクトで使用される C# クラス ライブラリがあります。1 つはすべてのパブリック クラスとメソッドにアクセスする必要があり、もう 1 つは一部のクラスとメソッドにのみアクセスする必要があります。
最善の解決策は何ですか?
2 つの異なるプロジェクトで使用される C# クラス ライブラリがあります。1 つはすべてのパブリック クラスとメソッドにアクセスする必要があり、もう 1 つは一部のクラスとメソッドにのみアクセスする必要があります。
最善の解決策は何ですか?
あなたの最善の策はInternalsVisibleTo
属性だと思います
通常、内部スコープ (C# の場合) とフレンド スコープ (Visual Basic の場合) を持つ型とメンバーは、それらが定義されているアセンブリでのみ表示されます。InternalsVisibleToAttribute 属性は、指定されたアセンブリ (フレンド アセンブリと呼ばれる) 内の型にもそれらを表示できるようにします。属性はアセンブリ レベルで適用されます。つまり、ソース コード ファイルの先頭に含めるか、Visual Studio プロジェクトの AssemblyInfo ファイルに含めることができます。
もちろん、これはリフレクションを使用してメソッドを呼び出すことを妨げるものではありません