Visual Studio本体を入れるのはだるいし、ちょっとした実験するのに、わざわざVS立ち上げるのはだるいという感じの時はVisual Studio Codeで作れる環境を用意しておくのもいいかもしれません。ということでVisual Studio Codeが入ってるという前提で、そこからの手順を。
node.jsを入れよう
いきなりC#と関係ないですが、各種ツールがあるのでnode.js入れます。
入ったらyoとgenerator-aspnetをインストールします。
npm install -g yo npm install -g generator-aspnet
dotnet core sdkを入れよう
.NET CoreのSDKを入れます。
.NET - Powerful Open Source Development
以下のコマンドをうって何か出ることを確認します。
dotnet
出ない場合は、プログラムファイルの下にdotnetフォルダが出来てるのでパスを通しておきましょう。
C#拡張機能を入れよう
以下の拡張機能をVS Codeに入れます。
C# in Languages category for Visual Studio Code | Visual Studio Marketplace
プロジェクトを作ろう
環境設定は終わりです。プロジェクトを作りましょう。 コマンドプロンプトで以下のコマンドを実行します。
yo aspnet
以下のようなのが表示されるのでConsole Application
を選びましょう。
_-----_ ╭──────────────────────────╮ | | │ Welcome to the │ |--(o)--| │ marvellous ASP.NET Core │ `---------´ │ generator! │ ( _´U`_ ) ╰──────────────────────────╯ /___A___\ / | ~ | __'.___.'__ ´ ` |° ´ Y ` ? What type of application do you want to create? Empty Web Application > Console Application Web Application Web Application Basic [without Membership and Authorization] Web API Application Class Library Unit test project (xUnit.net)
プロジェクト名を聞かれるので適当につけます。ここではHelloWorld
にしました。
フォルダをVS Codeで開きます。デバッグのためとかに必要な物を追加するか?とかrestore
するか?みたいなことが聞かれるのでYes
を選択します。
Program.cs
を編集すると、こんな感じにインテリセンスがききます。
さくっと以下のようなコードを書きましょう。
using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace HelloWorld { public class Program { public static void Main(string[] args) { Console.WriteLine("Hello world"); } } }
F5
で実行できます。
NuGetパッケージを追加してみよう
project.json
を開いてdependencies
の所に参照を追加します。JSON.NET
を追加してみましょう。ここでもインテリセンスがききます。
バージョン番号も
Ctrl + でターミナルを表示して
dotnet restoreと打ち込んで依存関係を解決します。
そうすると、こんな感じで
Ctrl + .で
using`の追加とかもやるようなサジェストが出てきます。
さくっと以下のようなコードを書いて
using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Newtonsoft.Json; namespace HelloWorld { public class Program { public static void Main(string[] args) { Console.WriteLine("Hello world"); var d = new Dictionary<string, object> { { "Name", "Tanaka" }, { "Age", 13 }, }; var json = JsonConvert.SerializeObject(d); Console.WriteLine(json); } } }
実行してみましょう。
ちなみに、さっきはF5
でデバッグ実行しましたがCtrl + F5
でデバッグなしで実行もできます。
こんな感じの実行結果になりました。
まとめ
プロジェクトの作成からCodeで出来たらいいなぁとは思うものの、Visual Studio 2015を立ち上げるほどではないけどC#試したいなというときには、そこそこいいかもしれません。 まぁ.NET Framework 4.xじゃなくて.NET Coreなので、ちょっと挙動は違うかもしれませんが。