1

ソリューションに同じ名前の.csprojクラスライブラリを2つ追加する必要があります.2つのプロジェクトがありますが、残念ながら、これらのプロジェクトクラスライブラリの名前は同じです:Hello.csproj。ソリューションに既存のプロジェクトを追加しようとすると、エラーが表示されます

http://blogs.msdn.com/b/ansonh/archive/2006/09/27/774692.aspx 上記のURLから同じプロジェクトで同じ名前空間dllを使用する方法を学びましたが、同じクラスライブラリを使用する方法についてサポートが必要です。解決策

ご不明な点がございましたら、お気軽にお問い合わせください。

ここに画像の説明を入力してください

:わかりました。理由を知りたいのですが、Autocat 2005と2010に2つのプロジェクトがあり、これらのプロジェクトを1つのソリューションにマージしたいのですが、2010年の更新ベースは2005に基づいているため、クラスライブラリは同じですが、両方を使用する必要があります。そのため、問題が発生し、助けを求めています。

4

2 に答える 2

3

すでに別のフォルダーに作成されていて、別のソリューションフォルダーにある限り、同じ名前のプロジェクトを作成できます。プロジェクトがすでに作成されている場合は、これを実行してプロジェクトをソリューションに追加します。

  1. 最初のプロジェクトをソリューションに追加します。
  2. ソリューションエクスプローラーウィンドウで、ソリューションを右クリックし、[追加]- >[新しいソリューションフォルダー]を選択します
  3. 新しく作成したフォルダに名前を付けます。
  4. フォルダを右クリックして、[追加]- >[既存のプロジェクト]を選択します
  5. 2番目のプロジェクトに移動し、.csprojファイルをダブルクリックします。

完了です。

于 2012-06-23T12:44:39.540 に答える
0

本当にこれを行う必要がある場合は、2番目のプロジェクトの名前が異なることを確認してから、2番目のプロジェクトのクラスの名前空間を変更します(通常、プロジェクト名は名前空間の最初の部分を構成します。その部分を変更するだけです)。クラスは内部的には同じですが、名前空間が異なるため、別個のエンティティになります。これは非常に臭いコードにつながりますが、ClientAppでそれらを混同し始めると、混乱を避けるために、常に完全な名前空間でそれらを参照するようにしてください(つまり、using xyz.myclassname;それらを使用するクラスファイルの先頭にステートメントがありません) 。

同じサービスなどの2つの(ほぼ同一の)インスタンスを実行したい場合もありますが、前述のように、これを実行する必要がある本当の理由を考えるのは困難です。見た目が同じで実装が異なる2つのインスタンスを探している場合は、代わりにインターフェイスを使用することをお勧めします。

編集: Visual Studioでは、同じ名前のプロジェクトを2つ持つことはできません。プロジェクト名を変更しても、プロジェクトGUID(.projファイルと.slnファイル)を変更しないと、クレイジーなゲームをプレイすることになります。

ここで行う最も簡単な方法は、ソリューションエクスプローラーで新しい空のプロジェクトを作成し、それを右クリックしてエクスプローラーでフォルダーを開き、元のプロジェクトから新しいプロジェクトにクラスファイルをコピーして、ソリューションエクスプローラーに戻すことです。 [すべてのファイルを表示](ソリューションエクスプローラーの上部にある小さなボタン)を選択し、新しいプロジェクトの下で新しく追加されたファイルを選択し、右クリックして[プロジェクトに追加]を選択します。(これらのメニューオプションはメモリからのものであり、おおよそ正しいはずです)。

于 2012-06-23T12:07:00.780 に答える