3.

Visual Studio で新規プロジェクト作成(C# Console / ASP.NET Core / WPF /

編集
この記事の要点
  • Visual Studioファイル → 新規作成 → プロジェクト からテンプレート選択でプロジェクト作成
  • 主要テンプレート: C# コンソール / ASP.NET Core Web アプリ / WPF / WinForms / クラスライブラリ
  • ソリューション(.sln)は複数プロジェクトを束ねる箱。プロジェクト(.csproj)は実体
  • NuGet パッケージマネージャーでライブラリ追加。dotnet add package でも可
  • F5 でデバッグ実行、Ctrl+F5 でデバッガなし実行、Ctrl+Shift+B でビルド。Git は VS の「Git 変更」ウィンドウで完結

Visual Studio とは

Visual Studio は Microsoft の統合開発環境(IDE)。.NET(C# / VB.NET / F#)、C++、Python 等の開発に対応します。本記事ではWindows 版 Visual Studio(VS Code ではなく Visual Studio 2022)でのプロジェクト作成手順を扱います。

事前準備: Visual Studio のインストール

  1. Visual Studio ダウンロードページからCommunity 版(個人・学生・小規模商用無料)を取得
  2. インストーラ起動 → ワークロード選択:
    • 「.NET デスクトップ開発」(WPF / WinForms / Console)
    • 「ASP.NET と Web 開発」(Web アプリ)
    • 「.NET Multi-platform App UI (MAUI)」(クロスプラットフォーム UI)
  3. 「インストール」→ 完了まで 10-30 分

新規プロジェクト作成の基本フロー

  1. Visual Studio 起動 → スタートウィンドウで「新しいプロジェクトの作成」
  2. テンプレートを言語 / プラットフォーム / プロジェクトタイプで絞り込み
  3. テンプレート選択 → 「次へ」
  4. プロジェクト名 / 場所 / ソリューション名を入力
  5. テンプレートによってはフレームワーク バージョン / 認証 / Docker サポートを選択
  6. 「作成」 → プロジェクトが生成され、ソリューションエクスプローラーに表示される

主要テンプレート

テンプレート用途主なファイル
コンソール アプリCLI ツール・バッチProgram.cs
ASP.NET Core Web アプリ (Razor Pages)サーバ側 WebPages/, Program.cs, appsettings.json
ASP.NET Core Web APIREST APIControllers/, Program.cs
Blazor Web AppC# だけで SPAComponents/, Program.cs
WPF アプリWindows デスクトップ (XAML)MainWindow.xaml, App.xaml
WinForms アプリWindows デスクトップ (フォーム)Form1.cs, Program.cs
クラス ライブラリDLL 作成・共有ロジックClass1.cs
xUnit / MSTest テストユニットテストUnitTest1.cs

ソリューションとプロジェクトの関係

1 つのソリューション(.sln)複数のプロジェクト(.csproj)を含められます。典型構成:

MyApp.sln                ← ソリューション
├── src/
│   ├── MyApp.Web/        ← Web プロジェクト
│   │   └── MyApp.Web.csproj
│   ├── MyApp.Core/       ← 共有ロジック(クラスライブラリ)
│   │   └── MyApp.Core.csproj
│   └── MyApp.Data/       ← DB アクセス
│       └── MyApp.Data.csproj
└── tests/
    └── MyApp.Tests/      ← テスト
        └── MyApp.Tests.csproj

プロジェクト間の参照は「依存関係 → プロジェクト参照の追加」または dotnet add reference:

# CLI 操作
dotnet new sln -n MyApp
dotnet new classlib -n MyApp.Core -o src/MyApp.Core
dotnet new webapi -n MyApp.Web -o src/MyApp.Web

dotnet sln add src/MyApp.Core/MyApp.Core.csproj
dotnet sln add src/MyApp.Web/MyApp.Web.csproj

# Web から Core を参照
dotnet add src/MyApp.Web/MyApp.Web.csproj reference src/MyApp.Core/MyApp.Core.csproj

フォルダ構造の標準

MyConsoleApp/
├── MyConsoleApp.csproj   ← プロジェクト定義(XML)
├── Program.cs            ← エントリポイント
├── appsettings.json      ← 設定ファイル(Web 系)
├── bin/                  ← ビルド出力(.exe / .dll)
│   └── Debug/net8.0/
├── obj/                  ← ビルド中間ファイル
└── Properties/
    └── launchSettings.json  ← デバッグ設定

NuGet パッケージの追加

外部ライブラリは NuGet で追加します:

  1. ソリューションエクスプローラーでプロジェクト右クリック → 「NuGet パッケージの管理」
  2. 「参照」タブで検索(例: Newtonsoft.Json / Serilog
  3. 「インストール」
# CLI でも追加可能
cd src/MyApp.Web
dotnet add package Newtonsoft.Json
dotnet add package Serilog.AspNetCore --version 8.0.0

# 削除
dotnet remove package Newtonsoft.Json

# 一覧
dotnet list package

# 復元(NuGet が壊れたとき)
dotnet restore

Git で初期化

  1. VS のメニュー 「Git → Git リポジトリの作成」
  2. リポジトリパス・GitHub/Azure DevOps 連携を選択
  3. .gitignore は VS が自動生成(Visual Studio 用テンプレート)
  4. 「Git 変更」ウィンドウでコミット → 「同期」でプッシュ
# CLI 操作
cd MyApp
git init
git add .
git commit -m "Initial commit"

# GitHub にリモート作成後
git remote add origin https://github.com/user/MyApp.git
git push -u origin main

ビルドと実行

操作ショートカットメニュー
ビルドCtrl+Shift+Bビルド → ソリューションのビルド
デバッグ実行F5デバッグ → デバッグの開始
デバッガなし実行Ctrl+F5デバッグ → デバッグなしで開始
ブレークポイントF9行の左マージンをクリック
ステップ実行F10 / F11F10: ステップオーバー / F11: ステップイン
停止Shift+F5デバッグ → デバッグの停止
# CLI でビルド・実行
dotnet build
dotnet run
dotnet run --project src/MyApp.Web

# リリースビルド
dotnet build --configuration Release
dotnet publish -c Release -o ./publish

ソリューションエクスプローラーの主要操作

  • 追加 → 新しい項目: クラス / インターフェース / フォーム等
  • 追加 → 既存の項目: 既存ファイルをプロジェクトに含める
  • 削除: ファイルを物理削除(注意:「プロジェクトから除外」とは別)
  • 名前の変更: F2。クラス名と連動させたい場合はシンボル名変更(Ctrl+R, R)を使う
  • スタートアッププロジェクトに設定: 複数プロジェクトのうち F5 で起動する方を指定

FAQ

Q: プロジェクトが開けない / 古いフォーマット
A: .NET Framework 4.x の古いプロジェクトは VS 2022 で開ける。.NET Core 2.x 等は移行が必要 → dotnet new console で作り直し + コードコピー、または try-convert

Q: Visual Studio Code との違い
A: VS Code は軽量エディタ、Visual Studio はフル IDE。WPF / WinForms / SQL Server プロファイラ等は VS のみ。シンプルな C# 開発なら VS Code + C# Dev Kit でも十分。

Q: NuGet が「復元できません」
A: dotnet nuget locals all --clear でキャッシュクリア。ネットワークプロキシは %AppData%\NuGet\NuGet.Config に設定。

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. インストール方法(Windows)
  2. インストール方法(Linux/Mac)
  3. プロジェクトの作成方法(Windows)
  4. プロジェクトの作成方法(Mac)
  5. アプリケーションの作成方法
  6. 開発用サーバー(Windows)
  7. 開発用サーバー(Mac)