.CSPROJ

CSPROJ ファイル

C# Project File
質問する
クイック回答

CSPROJ ファイルは C# プロジェクト ファイルです。これは Microsoft によって作成された XML ファイルで、ビルド システムに対して、どのソース ファイルを含めるか、どの NuGet パッケージを使用するか、どの .NET バージョンをターゲットにするかなど、1 つの C# プロジェクトをコンパイルする方法を指示します。ソース コード自体は含まれていません。Visual Studio、C# Dev Kit をインストールした VS Code、または JetBrains Rider で開くか、無料の .NET SDK を使用してターミナルからビルド(dotnet build)できます。内容を読むだけであれば、任意のテキスト エディタで開くことが可能です。

開発元: Microsoft カテゴリ: 開発用ファイル オープンスタンダード MIME: application/xml
対応OS Windows macOS Linux
関連: .DO · .MD · .HEX · .XSD

このページの内容

19k+ 個の拡張子を索引済み
最終確認日:Jun 28, 2026

ファイルの種類がわかりませんか?

ファイルを識別ツールにドロップしてください。最初の数バイトを読み取って形式を特定します。

ファイルを識別する

CSPROJ ファイル形式とは?

.csproj 拡張子を持つファイルは、デベロッパー ファイル カテゴリに属する C# プロジェクト ファイルです。

.csproj ファイルには何が含まれていますか?

.csproj ファイルの内容には、C# で記述されたプロジェクトのビルド設定が含まれています。これらは、新しいプロジェクトが作成されるときに Microsoft Visual Studio または .NET SDK コマンドライン ツールによって生成されます。.csproj ファイルでは、以下の情報を見つけることができます:

  • プロジェクト名と出力タイプ(実行可能ファイルまたはクラス ライブラリ)
  • プロジェクト ファイルへの参照、NuGet パッケージの依存関係(<PackageReference>)、および他のプロジェクト参照
  • コンパイル パラメータとターゲット フレームワーク(例:net9.0 や net48)
  • バージョン番号や作成者情報などのアセンブリ メタデータ

.csproj ファイルの内容は XML マークアップを使用して記述されています。 モダンなプロジェクトでは、.NET Core および Visual Studio 2017 で導入されたコンパクトな SDK スタイル形式が使用されます。これは <Project Sdk="Microsoft.NET.Sdk"> で始まり、通常はわずか数行の長さです。ソースの .cs ファイル は、暗黙的なグロビング(globbing)を介して自動的に取得されます。2017 年以前の古いレガシー プロジェクトでは、明示的な xmlns="http://schemas.microsoft.com/developer/msbuild/2003" 名前空間宣言を含む、より冗長な形式が使用され、すべてのソース ファイルが個別にリストされます。

.csproj ファイルは何に使用されますか?

.csproj ファイルを使用すると、数百のソース ファイルや外部依存関係で構成されることもある非常に複雑なプロジェクトのすべてのビルド パラメータを、1 つのドキュメントに保存できます。ビルド エンジンである MSBuild(または dotnet build CLI コマンド)は、.csproj を読み取ってプロジェクトをコンパイルします。.csproj ファイル内の情報は、異なるマシンや CI 環境間での一貫した動作も保証し、毎回コンパイル パラメータを指定する必要をなくします。1 つ以上の .csproj プロジェクトは、ソリューション ファイル(.sln または新しい .slnx)によってグループ化されます。

.csproj 自体にはソース コードは保持されていないことに注意してください。すべての C# コードは、それが参照する個別の .cs ファイル内に存在します。

.csproj ファイルを開くことはできますか?

.csproj ファイルは、新しいプロジェクトを作成するオプションを選択した後に自動的に生成されます。XML を使用して記述されているため、メモ帳などの最も単純なテキスト エディタでも表示や編集には十分です。ただし、XML の構文は厳格であることを覚えておく価値があります。明確な必要性がない限り、.csproj ファイルの変更は推奨されません。内容を不用意に変更すると、プロジェクト要素間の一貫性が失われ、Visual Studio やその他の開発ツールでプロジェクトを開く際に問題が発生する可能性があります。

セキュリティと安全性

リスク: MEDIUM

.csproj ファイル自体はプレーンな XML であり、読み取るだけなら無害です。本当のリスクは、それを「ビルド」または「リストア」したときに発生します。C# プロジェクトは、MSBuild ターゲット、ビルド前後のスクリプト、NuGet パッケージのリストア(インストール スクリプトを実行可能)、ソース ジェネレーター、およびデバッグ/実行時のコンパイル済みコードを実行できます。そのため、信頼できないプロジェクトを開いてビルドや実行を押すと、任意のコードが実行される可能性があります。Visual Studio がダウンロードされたプロジェクトに対して信頼のプロンプトを表示するのは、まさにこの理由からです。ビルドする前に、見慣れない .csproj のターゲット、パッケージ参照、スクリプトを検査し、信頼できないコードはビルドしないでください。

形式の詳細

概要
正式名称C# Project File別名 Visual C# project file, MSBuild C# project
開発元Microsoft登場時期 2002 (Visual Studio .NET / .NET Framework 1.0)
MIME タイプapplication/xml
タイプ1 つの C# プロジェクトのコンパイル方法(参照、ファイル、ビルド設定)を定義する XML MSBuild プロジェクト ファイル
標準規格オープン・ロイヤリティフリー

CSPROJ ファイルを開くプログラム

Windows4 apps
Microsoft Visual Studio フリーミアム プロジェクトをロードするには .csproj(またはその .sln)をダブルクリックします。無料の Community エディションでビルドと実行が可能です。C# にとって最高のフル IDE 体験を提供します。
Visual Studio Code (with C# Dev Kit) 無料 .csproj を含むフォルダを開きます。C# Dev Kit 拡張機能がプロジェクトを検出してロードし、編集、ビルド、デバッグを可能にします。
.NET SDK (dotnet CLI) 無料 ターミナルからビルド/実行します:«dotnet build MyProject.csproj» または «dotnet run»。IDE は不要で、クロスプラットフォーム対応です。
Notepad / any text editor オープンソース .csproj を XML として開き、参照、ターゲット フレームワーク、ビルド設定を読み取ったり手動で編集したりします(ビルドは不可)。
macOS2 apps
Visual Studio Code (with C# Dev Kit) 無料 .csproj を含むフォルダを開きます。C# Dev Kit 拡張機能がプロジェクトを検出してロードし、編集、ビルド、デバッグを可能にします。
JetBrains Rider フリーミアム .csproj/.sln を直接開きます。macOS 上で完全な C# プロジェクトをサポートします。非商用利用は無料です。
Linux2 apps
JetBrains Rider フリーミアム .csproj/.sln を直接開きます。macOS 上で完全な C# プロジェクトをサポートします。非商用利用は無料です。
Visual Studio Code (with C# Dev Kit) 無料 .csproj を含むフォルダを開きます。C# Dev Kit 拡張機能がプロジェクトを検出してロードし、編集、ビルド、デバッグを可能にします。

技術的詳細

詳細仕様
ファイル構造<Project> ルート要素を含み、その中に <PropertyGroup>、<ItemGroup>、およびオプションで <Target> 子要素を持つ XML
プロジェクト形式の種類SDK スタイル(.NET Core / VS 2017 以降):コンパクトで、Sdk 属性と暗黙的な *.cs グロビングを使用。レガシー フルフレームワーク:冗長で、すべてのソース ファイルを明示的にリストし、xmlns 2003 スキーマを使用
SDK 属性<Project Sdk="Microsoft.NET.Sdk"> は、すべてのモダンな SDK スタイル プロジェクトを開始させます。バリアントには Microsoft.NET.Sdk.Web (ASP.NET Core) や Microsoft.NET.Sdk.Worker が含まれます
ターゲット フレームワーク宣言<TargetFramework> 要素はコンパイル ターゲット(例:net9.0、net48、netstandard2.0)を指定します。<TargetFrameworks>(セミコロン区切り)は、1 つのファイルでマルチターゲットを有効にします
NuGet 依存関係の宣言<ItemGroup> 内の <PackageReference Include="PackageName" Version="x.y.z" /> 要素。古い packages.config アプローチを置き換えます
プロジェクト間参照<ProjectReference Include="../Other/Other.csproj" /> 要素。MSBuild がビルド順序と依存関係グラフを自動的に解決します
ソース ファイルの包含 (SDK スタイル)暗黙的 - プロジェクト ディレクトリ下のすべての *.cs ファイルは、明示的な <Compile> エントリなしで自動的にコンパイルされます
出力タイプExe(コンソール アプリケーション)、WinExe(Windows GUI)、Library(クラス ライブラリまたは NuGet パッケージ)。<OutputType> プロパティを介して設定されます
ビルド エンジンMSBuild - 直接、または .NET SDK CLI から dotnet build、dotnet run、dotnet publish を介して呼び出されます
テキスト エンコーディングUTF-8 プレーン テキスト。バイナリ シグネチャやマジック バイトはありません。BOM はオプションであり、ほとんどのモダンなツールでは省略されます
典型的なファイル サイズSDK スタイル プロジェクトの場合は 1 KB 未満。多くの明示的なファイル エントリを持つ大規模なレガシー フルフレームワーク プロジェクトの場合は最大約 50 KB
MIME タイプapplication/xml(text/xml または text/plain としても受け入れられます)
関連ファイル.csproj.user は、ユーザーごとのマシン固有の IDE 設定(デバッグ開始引数など)を保存し、バージョン管理にコミットすべきではありません
ソリューションのグループ化1 つ以上の .csproj プロジェクトが、IDE およびマルチプロジェクト CLI ビルドのために .sln または新しい .slnx ソリューション ファイルに統合されます
対応するプロジェクト形式.vbproj (Visual Basic .NET) および .fsproj (F#) は同じ MSBuild XML スキーマを使用し、同じソリューション内に共存できます
リリース日2002 (Visual Studio .NET / .NET Framework 1.0)
最新バージョンSDK-style project format (since .NET Core / VS 2017, 2017); current with .NET 9 (2024)
オープンスタンダードはい · ロイヤリティフリー
仕様書learn.microsoft.com

CSPROJ の変換

コミュニティ Q&A

ユーザーからの質問
質問する
CSPROJ ファイルを扱うユーザーからヘルプを得られます。OSやソフトウェアのバージョンなど、具体的に記載してください。
アカウント不要 ・ 通常1日以内に回答されます

まだ質問はありません。CSPROJ ファイルについて最初の質問をしてみましょう。

よくある質問

CSPROJ ファイルを開くにはどうすればよいですか?
Microsoft Visual Studio(無料の Community エディション)でそのファイル(またはその .sln)を開きます。フル機能の VS がない場合は、C# Dev Kit をインストールした VS Code でフォルダを開くか、JetBrains Rider を使用するか、無料の .NET SDK を使用してターミナルからビルド(«dotnet build»)します。読むだけであれば、任意のテキスト エディタで XML を表示できます。
Visual Studio なしで CSPROJ ファイルを開けますか?
はい。コマンドラインから無料の .NET SDK(«dotnet build MyProject.csproj»)を使用するか、C# Dev Kit を備えた VS Code、または JetBrains Rider を使用してください。これらは macOS や Linux でも標準的なオプションです。
なぜ CSPROJ ファイルの中にコードがないのですか?
.csproj にはソースが含まれていないためです。これはビルド定義(どのファイルをコンパイルするか、参照、ターゲット フレームワーク)のみを含みます。コードは .cs ファイルにあります。すべてを確認するには、IDE でプロジェクトを開いてください。
CSPROJ と SLN ファイルの違いは何ですか?
.csproj は「1 つ」の C# プロジェクト(そのファイル、参照、ビルド設定)を定義します。.sln は、1 つ以上の .csproj/.vbproj/.vcxproj プロジェクトを単一のワークスペースにグループ化します。すべてを操作するには .sln を開き、そのプロジェクトだけを操作するには .csproj を開きます。
SDK スタイルとレガシーな CSPROJ の違いは何ですか?
モダンな SDK スタイル プロジェクト(2017 年以降)は <Project Sdk="Microsoft.NET.Sdk"> で始まり、短く、ソース ファイルを自動的に含めます。レガシー形式(2017 年以前、.NET Framework)は、すべてのファイルと参照を明示的にリストするため、非常に長くなります。dotnet CLI を使用して、レガシーから SDK スタイルへの移行を支援できます。
CSPROJ ファイルを手動で編集できますか?
はい。XML なので、任意のエディタで参照、ターゲット フレームワーク、またはビルド オプションを編集できます。Visual Studio や «dotnet add package» に編集させる方が安全ですが、SDK スタイル プロジェクトの手動編集は一般的であり、十分にサポートされています。

参考文献

1Microsoft Learn - MSBuild project file schema referencelearn.microsoft.com
2Microsoft Learn - .NET project SDK overview (SDK-style csproj)learn.microsoft.com

さらに探索

データベース全体から

今週のトップ拡張子

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.PARTPartial Download File
4.BINCD/DVD Disc Image (BIN/CUE)
5.EXEWindows Executable (Portable Executable)
6.RPMSGRestricted Permission Message
7.MDMarkdown Document
8.DATProgram Data File (generic)
9.NOMEDIAAndroid No-Media Marker File
10.TXTPlain Text File

関連する拡張子

.DOStata Do-File
.MDMarkdown Document
.HEXIntel HEX File
.XSDXML Schema Definition
.MAPSource Map (JavaScript / CSS)
.CONFIGConfiguration File

無料ファイルツール

ブラウザで動作するファイル識別および画像変換ツール。すべてお使いのデバイス上で実行されます。

ツールボックスを開く

ファイル拡張子を A-Z で閲覧