トピックス
Announcing .NET 8 RC1 - .NET Blog
https://devblogs.microsoft.com/dotnet/announcing-dotnet-8-rc1/
.NET 8 RC1 がリリースされた。
このリリースでは System.Text.Json の改善、Android と WASM での AOT 後の IL ストリップ、Configuration Binding ジェネレーターの破壊的変更、 コンテナーの非プレビュータグへのスイッチ、非 Windows での Win32 リソースを含む Windows アプリのビルドといった対応が含まれている。
EF Core 8 RC1: Complex types as value objects - .NET Blog
https://devblogs.microsoft.com/dotnet/announcing-ef8-rc1/
Entity Framework Core 8 RC1 がリリースされた。
記事では Entity Framework Core 8 での新機能のリストや複雑な型への対応について紹介している。
ASP.NET Core updates in .NET 8 Release Candidate 1 - .NET Blog
https://devblogs.microsoft.com/dotnet/asp-net-core-updates-in-dotnet-8-rc-1/
.NET 8 RC1 での ASP.NET Core のアップデートについて。
- サーバーとミドルウェア
- HTTP/3 disabled by default
- HTTP/3 のデフォルト無効化
- API オーサリング
- Minimal APIs や MVC, SignalR でのキー付きサービスのサポート
- Blazor
- Blazor Web App テンプレートのアップデート
- 静的サーバーレンダリングでの追加アセンブリーからのコンポーネントの発見
- ルーティングの改善
- ページ更新のトリガー
- QuickGrid への任意の属性の引き渡し
- フォームフィールドが有効かどうかの判定
- .NET WebAssembly ランタイムの構成
- Ahead-of-Time (AOT) 後の .NET IL のトリミング
- アイデンティティ
- username プロパティーの削除
- Single page apps (SPA)
- 標準 .NET テンプレートオプション
- メトリクス
Announcing .NET MAUI in .NET 8 Release Candidate 1: Quality - .NET Blog
https://devblogs.microsoft.com/dotnet/announcing-dotnet-maui-in-dotnet-8-rc-1/
.NET 8 RC1 での .NET MAUI のアップデートについて。
このリリースでは様々な品質改善をはじめ、Xcode 15 のサポートなどが行われている。
Performance Improvements in .NET 8 - .NET Blog
https://devblogs.microsoft.com/dotnet/performance-improvements-in-net-8/
.NET 8 でのパフォーマンス改善について詳細な解説。
JIT や VM、GC をはじめ、プリミティブや String、コレクションやファイル I/O、ネットワーキングなど幅広い範囲の改善についてベンチマークなどを交えて細かく解説している。
Visual Studio 2022 17.8 Preview 2 has arrived! - Visual Studio Blog
https://devblogs.microsoft.com/visualstudio/visual-studio-2022-17-8-preview-2-has-arrived/
Visual Studio 2022 17.8 Preview 2 がリリースされた。
このリリースでは Git および GitHub に関連する機能の改善、C++ 関連の機能の改善、F# 関連の機能の改善、クロスプラットフォームでの Edit and Continue/Hot Reload のサポート、Linux の App Service へのアタッチ、.NET の Meters API によるカウンターのサポート、テストプロファイリング、エンタープライズ管理などが含まれている。
.NET September 2023 Updates – .NET 7.0.11, .NET 6.0.22 - .NET Blog
https://devblogs.microsoft.com/dotnet/september-2023-updates/
.NET 7.0.11 および 6.0.22 がリリースされた。
このリリースでは5つのセキュリティー修正が含まれているほか、いくつかの改善や不具合修正が含まれている。
.NET Framework September 2023 Security and Quality Rollup Updates - .NET Blog
.NET Framework の2023年9月のセキュリティーと品質累積アップデートがリリースされた。
このリリースでは5つのセキュリティー修正といくつかの不具合が修正されている。
アーティクル、スライドなど
LOH vs POH: Understanding the Two Special Segments of the .NET Heap
LOH (Large Object Heap) と .NET 5 で導入された POH (Pinned Object Heap) の違いについて。
ref readonly 引数 - 参照渡し | ++C++; // 未確認飛行 C ブログ
https://ufcpp.net/study/csharp/sp_ref.html#ref-readonly-param
C# 12 の ref readonly
引数についての解説。
Building a Minimal ASP.NET Core clone
https://steven-giesel.com/blogPost/e84dec43-51f1-4c70-8b3b-dcdb1c3164ce
コントローラー、DI、ミドルウェアとルーティングを実装してミニマルな ASP.NET Core を再現する試み。
【配信】.NET 8 RC1! C# Tokyo イベント - connpass
https://csharp-tokyo.connpass.com/event/296696/
9/19(火) に行われる C# Tokyo での配信イベント。
Creating Custom Health Checks in .NET Core
https://dev.to/me_janki/creating-custom-health-checks-in-net-core-e5n
カスタムなヘルスチェックを実装する方法について。記事ではデータベースへの接続チェックでの例を実装している。
Architecting Ambie 4.0
https://kidjenius.medium.com/architecting-ambie-4-0-c0a69da915db
Ambie という UWP で実装された環境サウンドプレイヤーのアーキテクチャーについて。
Designing Ambie 4.0
https://kidjenius.medium.com/designing-ambie-4-0-9615fdc7a752
Ambie という UWP で実装された環境サウンドプレイヤーの UI デザインについて。
First-class Upgrades for ASP.NET Core with JetBrains Annotations | The .NET Tools Blog
JetBrains.Annotations を使用して Rider と ReSharper での ASP.NET Core アプリケーション開発の体験を改善する方法について。
What's new in Teams Toolkit for Visual Studio 2022? - .NET Blog
https://devblogs.microsoft.com/dotnet/teams-toolkit-vs177-update/
Teams Toolkit for Visual Studio 2022 の新機能についての紹介。
アプリのライフサイクルの自動化やトンネリングを使用したデバッグなどについて。
Power Automate Desktop .NETスクリプトでデータテーブルを操作する
https://zenn.dev/pfirsich/articles/3db3f81dc6436d
Power Automate Desktop のスクリプトアクションでサポートされた .NET スクリプトについて。
ただし使用できる C# のバージョンは 5 とのこと。
Reverse engineering natively-compiled .NET apps
https://migeel.sk/blog/2023/09/15/reverse-engineering-natively-compiled-dotnet-apps/
NativeAOT デコンパイルされた .NET アプリケーションをリバースエンジニアリングする方法について。
Don't Build Your Own Bespoke Company Frameworks on Top of Akka.NET
https://petabridge.com/blog/akkadotnet-application-management-best-practices/
Akka.NET 上に企業固有のフレームワークを構築するよりもパターン指向のアプローチを推奨するという記事。
Balancing User Updates with Security Best Practices - Visual Studio Blog
https://devblogs.microsoft.com/visualstudio/standard-user-update/
標準ユーザーが更新できるようになったこととセキュリティー機能についての紹介。
Convert complex YAML to .NET types with custom YamlDotNet type converters
https://dev.to/asimmon/convert-complex-yaml-to-net-types-with-custom-yamldotnet-type-converters-4l9
YamlDotNet で複雑な YAML を .NET の型に変換するための型コンバーターを実装する方法について。
Tales from the .NET Migration Trenches - Shared Library
https://www.jimmybogard.com/tales-from-the-net-migration-trenches-shared-library/
.NET Framework から .NET への移行手法における共有ライブラリーの導入について。
Azure Functions の .NET 8 向けアップデートが発表された - しばやん雑記
https://blog.shibayan.jp/entry/20230912/1694509574
Azure Functions での .NET 8 のアップデートについて。
Isolated と In-Process の対応についてのほか、ASP.NET Core Integration について、コールドスタートの改善のためのいくつかについても触れている。
Implement a secure web application using nx Standalone Angular and an ASP.NET Core server
Angular と ASP.NET Core を使用してセキュリティー保護されたアプリケーションを実装する方法について。
Windows App SDK を使ってモダンなタイトルバーを持つアプリケーションを作る - しばやん雑記
https://blog.shibayan.jp/entry/20230911/1694400481
Windows App SDK のタイトルバーカスタマイズで電卓やストアのようなモダンな Windows アプリケーションのタイトルバーを実現する方法について。
ライブラリ、リポジトリ、ツールなど
jonathanpeppers/dotnes: .NET for the NES game console
https://github.com/jonathanpeppers/dotnes
.NET で NES (ファミコン) の実行バイナリーを生成するツール。
MSIL を 6502 のアセンブリにトランスパイルする仕組みで生成している。
leonardochaia/dotnet-affected: .NET tool for determining which projects are affected by a set of changes. Useful for large projects or monorepos.
https://github.com/leonardochaia/dotnet-affected
変更セットからどのプロジェクトが影響を受けるかを調べるツール。
Exception Visualizer - Visual Studio Marketplace
https://marketplace.visualstudio.com/items?itemName=elmahio.exceptioninspector
Visual Studio 向けの例外のビジュアライザー拡張。
If anyone wants to try my new Exception Visualizer for Visual Studio, there's a (guaranteed to crash once in a while) extension available here: https://t.co/taEZb3Foo5 #visualstudio #vsix pic.twitter.com/eUaoopGB5I
— Thomas Ardal 🦄 elmah.io (@ThomasArdal) September 11, 2023
サイト、ドキュメントなど
ツイート
空コレクションのGetEnumeratorが全部同じenumeratorを返す例。
— ++C++; // 管理人: 岩永 (@ufcpp) September 16, 2023
(コード追っていくとシングルトンで同じインスタンス返してそう)。
これとPGOのguarded devirtualizationかかると、マジで foreach (var x in list ?? []) の類のループ消えるかも。 pic.twitter.com/mJ4KjlklvK
For the #MicrosoftHackathon, I added SQL syntax highlighting to C# strings in #VisualStudio. #MicrosoftLife https://t.co/85xcz9HE4U
— Brice Lambson🦄 (@bricelambs) September 15, 2023
While reading Stephen Toub's article on .NET 8 performance, I noticed a very interesting feature introduced in .NET 8, that I never heard about: [UnsafeAccessor].
— Kevin Gosse (@KooKiz) September 13, 2023
It allows you to get a reference to a private field or method of a target type while ignoring visibility checks.… pic.twitter.com/MLfysOMp0W
Today we reviewed the C# 12 features shipping in .NET 8. Collection literals are one of my favorite features. The code generation is also *HEAVILY* optimized and will get better in future releases! #dotnet #csharp pic.twitter.com/46p6koScic
— David Fowler (@davidfowl) September 12, 2023