LoginSignup
3
3

More than 3 years have passed since last update.

.NET 5(C#9.0)を試してみた

Last updated at Posted at 2020-11-14

2020/11/10 (日本時間11日 1:00)に、.NET 5が正式リリースされたそうなので試してみました。

.NET 5のインストール手順

Visual Studio 2019のインストール/アップデート

.NET 5をVisual Studioで扱う場合は、Visual Studio 2019 Version 16.8以降が必要とのことなので、
まずはアップデートを行います。
インストールがまだの場合は、最新のVisual Studioをインストールしましょう。
Download Visual Studio 2019 for Windows & Mac

既にインストールされている場合は、Visual Studio Installerを起動し、更新ボタンをクリック
update.png

または、Visual Studioの [ヘルプ] -> [更新プログラムの確認] で更新します。
check.png

アップデートが完了したら、 [ヘルプ] -> [Microsoft Visual Studio のバージョン情報] とクリック
version.png

現在のバージョンが確認できます。
nowver.png

.NET 5をインストール

いよいよ.NET 5のインストールです。
まず、ダウンロードページにて、.NET 5のSDKインストーラをダウンロードします。
(種類がいろいろあるので、自分の使ってる端末にあったものをダウンロードします。)
ダウンロードが完了したら、インストーラを起動し、インストールボタンをクリック
install.png
しばらく待つと、インストール完了の旨が表示されます。
インストール完了
これで、.NET 5の環境が整いました。
意外と簡単だった。

.NET 5(C#9.0)を使ってみる

さっそく新規プロジェクトを作って使ってみようと思います。

コンソールアプリの作成

とりあえずコンソールからやりたいと思います。
新しいプロジェクトの作成から、コンソール アプリ (.NET Core)を選択1して、次へのボタンをクリック
適当なプロジェクト名を決め、作成ボタンをクリック
仮に、「Dotnet5Test」としました。
proj.png

プロジェクトを作成したら、まずは、プロジェクトのプロパティを開きます。
プロパティ

対象のフレームワークを、.NET 5に変更します。
フレームワークの変更

これで.NET 5が使えるようになったので、さっそくコードを書いていきましょう。
個人的に目玉なのが、トップレベルステートメントというのが追加されたそうなので、試してみたいと思います。
最初に出力されたProgram.csのコードは、全てコメントアウトにします。
コメントアウト
そしたら、1行だけ書きます。

System.Console.WriteLine("Hello World!");

えっメインメソッドとかコメントアウトしたけど実行できるの?
HelloWorld
できちゃいました:relaxed:2
トップレベルステートメントというのは、メインメソッド相当のを自動生成してくれるらしいです。
なのでいきなり標準出力の処理を書いても、勝手にメインクラスとして認識してくれるというわけですね。
(なんか感動)
ちなみに以下のコードを実行すると...

using System;

Console.WriteLine("外側からHello World!");

namespace Dotnet5Test
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("内側からHello World!");
        }
    }
}

soto.png

こうなります。
Mainメソッドは無視されるようです。(たしか警告が出てたような...)
他の機能を試したい場合は、以下を参照してください。
What's new in .NET 5 (英語)
C# 9.0 の新機能 (日本語)

Windows Formsの作成

今度はFormsアプリを作ってみます。
Windows Forms App (.NET)で作成(dotnet5Formsで作成しました。)
FormsProj
プロジェクトを作成したら、先程と同じように、プロパティから、対象のフレームワークを.NET 5に変更します。
すると、Formsの場合、以下のような警告が表示されます。
image.png

警告  NETSDK1137  Microsoft.NET.Sdk.WindowsDesktop SDK を使用する必要はなくなりました。ルート プロジェクト要素の SDK 属性を 'Microsoft.NET.Sdk' に変更することをご検討ください。

検討してくださいとのことなので、.csprojのProject要素のSdk属性を、Microsoft.NET.Sdkに変更します。
(1行目のところ)
ビルドすると警告が消えるのでそのまま実行してみます。
image.png
この通り、普通に実行させることができました。

VS Code(コマンド)でプロジェクト作成/実行

.NET 5をインストールすると、dotnetというコマンドが使えるようになっています。

dotnet --version

image.png
なので、コマンドでプロジェクトを作って、実行ができます。

プロジェクト作成
dotnet new console -o Dotnet5Test
実行
dotnet run

image.png

感想

  • .NET 5のインストールが以外と簡単だった。
  • コンソールアプリに関しては、.NET 5だと入門しやすい、とっつきやすいのかなと思った。

参考サイト


  1. .NET 5のテンプレートプロジェクトがないようなので、今回は.NET Coreを選択しました。.NET 5のテンプレートを表示する方法ってあるのかな? 

  2. 予め、[ツール] -> [オプション] -> [デバッグ] -> [デバッグの停止時に自 動的にコンソールを閉じる] のチェックを外す。 

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3