Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

ASP.NET C#

Visual Studioのプロジェクトを別ソリューションに移動する手順

投稿日:

 

<目次>

(1) Visual Studioのプロジェクトを別ソリューションに移動する手順
 (1-1) プロジェクトを別ソリューションに移動する手順
 (1-2) 参考①:「.csproj」ファイルとは?
 (1-3) 参考②:ソリューション内に複数プロジェクトを入れる事の是非について

(1) Visual Studioのプロジェクトを別ソリューションに移動する手順

(1-1) プロジェクトを別ソリューションに移動する手順

あるソリューションA内のプロジェクトを、別のソリューションBに移動するための手順をご紹介します。

(図110)やりたい事のイメージ

●STEP1:資源のコピー

・「移動元のプロジェクト資源」(図の左側)を「移動先のソリューション」のフォルダ(図の右側)に格納します。
 
(図121)

 

●STEP2:「既存のプロジェクト」を追加

・Visual Studioで「移動先」のプロジェクトを開き、「ソリューション」を右クリック⇒「追加」⇒「既存のプロジェクト」を押下します。
 
(図122)
 
・プロジェクトを選択するウィンドウが開くので、先程コピーしたプロジェクト資源内の「XXXX.csproj」のフォルダを指定します。
(図123)

・選択したプロジェクトが追加された事を確認します。
(図124)

●STEP3:疎通確認

実際に実行してみて、移行する前と同様に動く事を確認します。
 
・スタートアッププロジェクトで今回追加したプロジェクトを選択します。
スタートアッププロジェクトというのは、F5やスタートボタンを押した時に「デフォルト」で実行されるプロジェクトを指定するものです。
 
(図125)
 
・Ctrl+F5等で実行すると結果を確認できます。
 
(図126)

目次にもどる

(1-2) 参考①:「.csproj」ファイルとは?

拡張子が「.csproj」のファイルは、ご自身のプロジェクトのファイルの一覧や、システムアセンブリ(System.Core、System.Dataなど)への参照、各種メタデータ(.NETのバージョン、ビルドの出力パス、実行ファイルの拡張子他)といったプロジェクトをビルドするために必要なあらゆるデータを保持しており、プロジェクトを司る各種の設定情報を保持していると言えます。
 
中身はxml形式なので、テキストエディタ等で簡単に中身を見る事もできます。
 
(図131)「.csproj」の例

また、アセンブリ(dllやexe)単位で「.csproj」ファイルが対応しており、ソリューションファイル「.sln」がそれらのプロジェクトを束ねています。

目次にもどる

(1-3) 参考②:ソリューション内に複数プロジェクトを入れる事の是非について

ソリューション内に複数のプロジェクトを入れる事はなるべく避けた方が無難となります。というのも、複数のプロジェクトがあるという事は、複数のアセンブリ(dllやexe)がある状態であり、更に本来は共有できるアセンブリも重複してそれぞれで持ってしまっている可能性もあるためです。

この状態ではコンパイルも遅くなるので、もしもプログラムを整理する等の目的の場合は、プロジェクトを分けるよりも、プロジェクト内でフォルダを分ける等の選択肢も検討すると良いかもしれません。

・別々のデプロイ(リリース)をする場合
・複数言語で開発する場合
・別の箇所で使用するライブラリを作る場合

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-ASP.NET, C#

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

C#のDB接続時のエラー(provider: Named Pipes Provider, error: 40 – Could not open a connection to SQL Server)

<目次> (1) 記事の目的  (1-1) エラー概要  (1-2) エラー原因  (1-3) エラー対策   (1-3-1) SQLServer:リモート接続を有効化   (1-3-2) SQLSe …

ASP.NETでビュー(View)に複数のモデル(Model)を連携する方法

  <目次> (1) ASP.NETでビュー(View)に複数のモデル(Model)を連携する方法  (1-1) やりたい事の整理  (1-2) ViewModelを使った複数モデルの連携 …

ASP.NET MVCのRouteConfigを追加する方法を2つご紹介

  <目次> (1) ASP.NET MVCのRouteConfigを追加する方法を2つご紹介  (1-1) やりたい事の整理  (1-2) 方法1:通常のルーティング  (1-3) 方法2 …

C#のdynamic型とは?使いどころやvarとの違いもご紹介

  <目次> (1) C#のdynamic型とは?使いどころやvarとの違いもご紹介  (1-1) dynamic型とは?  (1-2) dynamic型の使いどころ  (1-3) 動作確認 …

C#のabstract(抽象クラス)とは?継承やoverrideの手順や使い方をご紹介

<目次> (1) C#の抽象クラスやabstractとは?意味や使い方をご紹介  (1-1) 抽象クラスとは?  (1-2) 抽象クラスの使い方   (1-2-1) 抽象クラスの定義   (1-2-2 …

  • English (United States)
  • 日本語
Top