LoginSignup
0
3

More than 1 year has passed since last update.

C#/.NET関連の雑多なメモ

Last updated at Posted at 2020-06-29

便利なオンラインサービス

オンラインコンパイラ

  • sharplab
    最新のコンパイラが使用できるが、実行は制限が非常に厳しい。
    (コンパイルやアセンブラだけなら可)
  • .NET Fiddle
    .NET 5が使える。制限は緩いが、IDEが若干残念。
  • Compiler Explorer
    アセンブリが見やすく、実行もできる。
  • try.NET
    C# 7.3相当(2020/06/30時点)と思われるが、Spanは使用できない。
  • wandbox
    .NET Core/Mono(mcs)が選べるが、.NET Coreの場合は実行に時間がかかる。
  • paiza.io
    Mono 4.5?なので C# 6.0相当と思われる

APIなど

各ソースコードと破壊的変更

CoreCLR CoreFX(BCL) 破壊的変更
main CoreCLR / CoreLib CoreFX / CoreLib
6.0 CorCLR .NET 6.0 での破壊的変更
5.0 CorCLR .NET 5.0 の破壊的変更
3.1 CoreCLR / CoreLib CoreFX / CoreLib .NET Core 3.1 の破壊的変更
3.0 .NET Core 3.0 の破壊的変更
2.1 .NET Core 2.1 の破壊的変更
2.0 CoreCLR CoreFX .NET Coreの破壊的変更

ツール

フリーの逆コンパイラ

スクリプティング

  • C# Interactive
    "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Roslyn\csi.exe"
    (WindowsTerminalなら"commandline": "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\MSBuild\\Current\\Bin\\Roslyn\\csi.exe")
  • LINQPad

バージョン

Symbolを使用して、ソースコード中で#if NETCOREAPP3_1のように判定できる。

TargetFramework ターゲット フレームワーク モニカー (TFM) Symbol 既定のバージョン
.NET Framework NETFRAMEWORK
net20 NET20 7.3 1
net35 NET35 7.3 1
net40 NET40 7.3 1
net45 NET45 7.3 1
net451 NET451 7.3 1
net452 NET452 7.3 1
net46 NET46 7.3 1
net461 NET461 7.3 1
net462 NET462 7.3 1
net47 NET47 7.3 1
net471 NET471 7.3 1
net472 NET472 7.3 1
net48 NET48 7.3 1
.NET Standard NETSTANDARD
netstandard1.0 NETSTANDARD1_0 7.3
netstandard1.1 NETSTANDARD1_1 7.3
netstandard1.2 NETSTANDARD1_2 7.3
netstandard1.3 NETSTANDARD1_3 7.3
netstandard1.4 NETSTANDARD1_4 7.3
netstandard1.5 NETSTANDARD1_5 7.3
netstandard1.6 NETSTANDARD1_6 7.3
netstandard2.0 NETSTANDARD2_0 7.3
netstandard2.1 NETSTANDARD2_1 8.0
.NET Core NETCOREAPP
netcoreapp1.0 NETCOREAPP1_0
netcoreapp1.1 NETCOREAPP1_1
netcoreapp2.0 NETCOREAPP2_0 7.3
netcoreapp2.1 NETCOREAPP2_1 7.3
netcoreapp2.2 NETCOREAPP2_2 7.3
netcoreapp3.0 NETCOREAPP3_0 8.0
netcoreapp3.1 NETCOREAPP3_1 8.0
.NET 5 net5.0 NET5_0 9.0
.NET 6 net6.0 NET6_0 10

言語仕様

wikipediaの方が情報がそろっているので、そちらを適宜参照。

本家

ECMA(C# 5.0)

JISX3015(C# 1.2相当)

docs.microsoft.com(日本語)

https://github.com/dotnet/csharplang.ja-jp から生成されている。

歴史

  • C# 8.0 - .NET Core 3.0 and Visual Studio 2019 version 16.3
  • C# 7.3 - Visual Studio 2017 version 15.7
  • C# 7.2 - Visual Studio 2017 version 15.5
  • C# 7.1 - Visual Studio 2017 version 15.3
  • C# 7.0 - Visual Studio 2017
  • C# 6 - Visual Studio 2015
  • C# 5 - Visual Studio 2012
  • C# 4 - Visual Studio 2010
  • C# 3 - Visual Studio 2008
  • C# 2 - Visual Studio 2005
  • C# 1.2 - Visual Studio .NET 2003
  • C# 1.0 - Visual Studio .NET 2002
  1. 古いcsproj形式では個別指定 2 3 4 5 6 7 8 9 10 11 12 13

0
3
2

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
0
3