2009-07-08 5 views

答えて

3

Visual Studioでは、単体テスト用に独自のクラスをラッパーとして生成できます。これはシャドウクラスまたはシャドーアセンブリと呼ばれます。これは、フレームワーククラスに対しても同じことを行うために使用できます。

は、いくつかの手動の手順があります。

まず、あなたは(あなたのプロジェクトのために構築された影がしたいアセンブリの名前が含まれている必要があり、プレーンテキストファイルをあるframework.accessorファイルを作成する必要がありますアセンブリを参照してください)。例えば:

System.dll 

その後、手動で.csprojファイルを編集して、このitemgroupを追加します。

<ItemGroup> 
    <Shadow Include="framework.accessor" /> 
</ItemGroup> 

は、プロジェクトをビルドします。生成された* _Accessorクラスを使用して、内部クラスとプライベートメソッドにアクセスできるようになりました。

件名にはgood blog postがあります(この回答の情報もほとんどあります)。

ライブラリのプライベートメソッドとクラスを使用することは悪い習慣ですが、あなたの理由があると思います。

+0

ありがとう、私はそれが悪い習慣であることを知っていますが、それは迅速かつ汚れたユーティリティアプリケーションのためのものです。 (具体的には、vb.netアプリケーションをC#アプリケーションに素早く移行するにはMicrosoft.VisualBasic.CompilerServicesにアクセスする必要があります) –

関連する問題