プロジェクト (アプリケーション) 内の多くのクラス ファイルの 1 つの dll を作成して、他のプログラミング言語で使用できるようにしようとしています。プロジェクトの特定の部分に依存しているため、これをプロジェクトの残りの部分から分離することはできません。私の質問は、この 1 つの cs ファイルを DLL にコンパイルし、必要なすべての名前空間を含めて、上部に「使用」する方法を教えてください。ありがとう
4 に答える
多くの異なるアプリケーションで使用しているコードがある場合は、それを別のアセンブリに移動する必要があります。新しいプロジェクト (ファイル -> 新しいプロジェクト -> クラス ライブラリ) を作成し、そのコードをそこに置きます。その後、必要な他のソリューションからその DLL を参照できます。
進行中のソリューションにプロジェクトを追加して、同じことを行うこともできます (ソリューションを右クリック -> 追加 -> 新しいプロジェクト -> クラス ライブラリ)。次に、プロジェクト自体を参照するだけです (参照を右クリック -> ソリューション -> プロジェクトを選択)。正確なメニューの選択肢は VS2010 と 2012 で少し異なりますが、一般的な考え方は理解できると思います。
コードをコピーせずに再利用するこの行為は、DRY コーディングの基本的なプラクティスの 1 つです。コードをコピー アンド ペーストしないでください。2 つの完全に異なる場所で同じコードを参照できるように、常にリファクタリングしてください。この手法を採用しないと、最終的に「同じ」コードの 2 つの異なるバージョンが作成されることになり、メンテナンスの悪夢となります。
ステップ1 ソリューションを右クリック->追加->新しいプロジェクト->名前を付けて->追加します。
ステップ 2 Shift キーを押しながら、新しいプロジェクトに移動する cs ファイルをドラッグします。これにより、元のプロジェクトにコピーを残さずに移動できます
ステップ 3 元のアセンブリで、[参照] -> [参照の追加] -> [プロジェクト] タブから、新しく追加したプロジェクトを選択します。
ステップ 4 移動したアセンブリにアクセスする場合は、ページの上部に移動して、using の後にジェネリック アセンブリの名前空間を記述します。
複数のアプリケーションでコードを再利用することは素晴らしいアイデアです。これらの手順に従ってアプリケーションをビルドすると、新しく追加されたプロジェクトが別の dll にコンパイルされます。ただし、元のプロジェクトのコードに依存している場合、その dll を他のアプリケーションで使用することはできません。コードの一部を再利用する予定がある場合は、事前に計画を立てて、できるだけ一般的な方法で記述することをお勧めします。アプリケーション固有のロジックを 1 つのアセンブリ (project/dll) に配置し、ジェネリック ロジックを 2 番目のアセンブリ (project/dll) に配置してから、プロジェクトを参照し、必要なファイルの先頭に using ステートメントを追加することで通信させます。からdllにアクセスします。
「デバッグ」時にファイルを作成するクラスライブラリを作成できます。作成方法については、こちら.dll
のチュートリアルに従ってください。すでにプロジェクトにある場合は、
ソリューション -> プロジェクトを追加 -> 新規 -> 「クラス ライブラリ」を選択
次に、プロジェクトでリソースに移動します->追加->プロジェクト->クラスライブラリ名
また
リソース -> 追加 -> 参照 -> クラス ライブラリの場所
お役に立てれば!
csc.exe を使用する場合は、この例のようなものに従うことができます。名前を独自の .cs ファイル名に置き換えてください。csc.exe の使用方法を説明する MSDN へのリンクも以下に含めます。csc.exe を使用したコマンドライン ビルド
csc /t:library source.cs -> source.dll