.NET 7 RC1リリース

読むべきアナウンスブログは以下の通り

 

devblogs.microsoft.com

devblogs.microsoft.com

  • Blazor WebAssemblyでの動的認証要求
  • 場所変更イベントの処理
  • Blazor WebAssemblyデバッグの改善
  • .NET6プロジェクト用の.NET WebAssemblyビルドツール
  • WebAssemblyでの.NET JavaScript interop
  • Kestrelの完全な証明書チェーンの改善
  • より高速なHTTP/2アップロード
  • HTTP/3の改善
  • HTTP/3経由のWebTransportに対する実験的なKestrelサポート
  • gRPC JSONトランスコーディングの実験的なOpenAPIサポート
  • レート制限ミドルウェアの改善
  • macOS開発証明書の改善

 

 

devblogs.microsoft.com

 

品質向上

Visual Studioからコンソールプロジェクト実行時にWindows Terminalで実行する

 

設定→プライバシーとセキュリティ→開発者向け→ターミナルでWindowsターミナルに設定します。

ここでは、WindowsTerminalのPreview版に設定しておきました。

これで、背景画像が設定されているWindows TerminalのPreview版がVisual Studioからデバッグ起動されていることが分かると思います。

(一つ前の記事の伏線回収)

 

Windows Terminalに背景画像を設定できるようになった(Preview)

devblogs.microsoft.com

 

Windows TerminalのPreviewにてテーマの導入により多くのカスタマイズの可能性が追加されたということでその一つに背景画像を設定できるようになったということです。

 

というわけで、早速やってみました。

で、こちらがドキュメント。

docs.microsoft.com

 

settings.json内のdefaultsセクション内にbackgroundImageというプロパティを追加して物理パスを記述すればとりあえずよいようだ。

 

 

setting.jsonは設定の一番下にあるJSONファイルを開くから開くことができる。

 

"desktopWallpaper"と記述することでデスクトップの壁紙を設定することもできるようだ。

 

 

というわけで、上記のように記述してみた。

46行目の部分が追記した部分である。

 

 

この結果、上のようにWindows Terminalに背景画像を設定できた。

機能面では変わらないかもしれないが、こうしたカスタマイズで気分が上がるので試してみてはどうだろうか?

.NETラボ勉強会2022年8月登壇まとめ

dotnetlab.connpass.com

.NET7期待の新機能というタイトルで登壇してきました。

 

www.slideshare.net

 

前世代の.NET6ではMAUIのリリースなどありC#統一を果たしたそんな世代であったというわかりやすいプロジェクト目標がありました。

 

.NET7ではなくても困らないけどもあるとすごく便利という機能が多く追加されたそんな印象があります。

 

今回の勉強会のセッションではWebで便利な機能を中心に紹介をしていきました。

 

印象的なのは、C#11として追加された生文字リテラルの文法。一切のエスケープ文字なしに文字列を表現できるということでJSONやらCSVなどの文字列の加工に非常に便利な機能となっています。また、補間文字列も使用可能ですのでこの辺の実用度も高いと評価できます。

 

また、もっとも力を入れているWebのフレームワークであるBlazorでも、初期ロード時に今まではロード中を示す文字のみの表示であったのが、.NET 7からデフォルトでアニメーション表示が入るようなったというのは地味ながらうれしい変化じゃないでしょうか?

とくに、Blazor WebAssemblyはロード時間が長くなりがちですのでこれだけでも印象が変わりそうです。

 

また、.NET7というわけではありませんが(.NET6でも反映されている)ついにBlazor WebAssemblyでデバック時のホットリロードが可能になっています。今まで、できなかった理由はいろいろあったのですが、一般開発者目線で見た場合これは大きく生産性向上につながることと思います。

 

docs.microsoft.com

ドキュメントをあとで確認したところ、Blazor WebAssemblyでは.NET 6、Visual Studio2022 (17.1)以上の組み合わせでデバック実行時にホットリロード可能となっています。