
Visual Studio Code を使って、Ubuntu のC# コンソールアプリをデバッグする方法を紹介します。
Visual Studio Code は、Microsoft から提供されているフリーのエディタで、Mac、Linux、Windows で動作します。
Visual Studio Code のインストール
Visual Studio Code をダウンロードします。インストールは、ダウンローしたZip ファイルを任意のフォルダに展開するのみです。

Mono のインストール (手順の情報元)
Mono は.NET アプリケーションを、Windows 以外で動かすためのプラットフォームです。
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list sudo apt-get update sudo apt-get install mono-complete |
DNVM のインストール (手順の情報元)
DNVM は.NET Version Manager のことで、DNX(.NET Execution Environment) をダウンロードするのに必要です。
sudo apt-get install unzip curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh && source ~/.dnx/dnvm/dnvm.sh |
NuGet パッケージのソースの修正 (手順の情報元)
NuGet パッケージのソースからモジュールをダウンロードできるよう「~/.config/NuGet/NuGet.config」を作成します。
NuGet.config の中身は以下です。
<?xml version="1.0" encoding="UTF-8"?> <configuration> <packageSources> <add key="AspNetVNext" value="https://www.myget.org/F/aspnetvnext/api/v2/" /> <add key="nuget.org" value="ttps://www.nuget.org/api/v2/" /> </packageSources> <disabledPackageSources /> </configuration> |
DNX のインストール (手順の
情報元)
DNX は.NET Execution Environment の略です。
node.js のインストール
node.js をインストールします。node.js のダウンロードサイトから「Source Code」をダウンロード・インストールする方法は以下です。

sudo apt-get install g++ ./configure make sudo make install |
Yeoman のインストール (手順の
情報元)
Yeoman は、Visual Studio Code でC# アプリケーションを作成するためのひな形を作成してくれます。
sudo npm install -g yo grunt-cli generator-aspnet bower |
コンソールアプリのひな形作成 (手順の情報元)
インストールしたYeoman を使用して、コンソールアプリのひな形を作成します。
1. 「yo aspnet」を実行します。

2. 「匿名の使用量レポートを送信していいですか?」といった旨の質問を聞かれるので y(Yes) か n(No) を入力します。

3. カーソルを移動し「Console Application」を選択しEnter を押します。

4. コンソールアプリの名前を入力します。ここではデフォルト値「ConsoleApplication」を使用しました。

5. 作成されたフォルダに移動し「dnu restore」を実行します。「dnu restore」でアプリの実行に必要なNuGet パッケージをダウンロードしてくれます。

Visual Studio Code の起動
1. 「Code」をダブルクリックしVisual Studio Code を起動します。

2. 一番左上のアイコンをクリックし「Open Folder」をクリックします。

3. 上記で作成した「ConsoleApplication」のフォルダを開きます。

4. 「public void Main(String[] args)」に、static を足し「static public void Main(String[] args)」にしておきます。

launch.json の設定
launch.json はアプリを起動するための設定ファイルです。
1. 左の一番下のアイコンをクリックし、緑色の三角形をクリックします。

2. launch.json が作成されるので、以下のように編集します。
{ "version": "0.1.0", // List of configurations. Add new configurations or edit existing ones. // ONLY "node" and "mono" are supported, change "type" to switch. "configurations": [ { // Name of configuration; appears in the launch configuration drop down menu. "name": "Launch ConsoleApplication", // Type of configuration. Possible values: "node", "mono". "type": "mono", // Workspace relative or absolute path to the program. "program": "ConsoleApplication.exe", // Automatically stop program after launch. "stopOnEntry": true } ] } |
tasks.json の設定tasks.json はタスクを設定するための設定ファイルです。
1. 「Ctrl + Shift + p」 を押し、表示されたウィンドウに「build」と入力し「Run Build Task」を実行します。

2. 「Configure Task Runner」をクリックします。

3. tasks.json を以下のように編集します。
{ "version": "0.1.0", "command": "xbuild", "args": [ // Ask msbuild to generate full paths for file names. "/property:GenerateFullPaths=true" ], "taskSelector": "/t:", "showOutput": "silent", "tasks": [ { "taskName": "build", // Show the output window only if unrecognized errors occur. "showOutput": "silent", // Use the standard MS compiler pattern to detect errors, warnings // and infos in the output. "problemMatcher": "$msCompile" } ] } |
ConsoleApplication.csproj の作成ビルドを成功させるために、csproj ファイルを作成します。
1. 左のウィンドウから、右クリック→「New File」をし「ConsoleApplication.csproj」を作成します。

ConsoleApplication.csproj の中身は、以下のようにします。
<Project DefaultTargets = "Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <!-- Specify the inputs by type and file name --> <ItemGroup> <CSFile Include = "Program.cs"/> </ItemGroup> <Target Name = "Build"> <!-- Run the Visual C# compilation using input files of type CSFile --> <CSC Sources = "@(CSFile)" DebugType="full" Optimize="no" OutputAssembly="ConsoleApplication.exe" > <!-- Set the OutputAssembly attribute of the CSC task to the name of the executable file that is created --> <Output TaskParameter="OutputAssembly" ItemName = "EXEFile" /> </CSC> </Target> </Project> |
デバッグ1. 再度「Ctrl + Shift + p」 を押し「build」と入力し「Run Build Task」を実行します。

2. 結果「ConsoleApplication.exe」が出来上がります。

3. 左の一番下のアイコンをクリックし、緑色の三角形をクリックすると、デバッグが実行できます。

4. ブレークポイント、コールスタック、引数の確認、ステップ実行等も可能です。
情報元
Visual Studio Code (英語)
関連記事
Ubuntu でHTTP リクエストをキャプチャーし、それを再送する方法
- 2015/07/20(月) 22:38:41|
- .NET
-
| トラックバック:0
-
| コメント:0