トピックス
.NET 9 Preview 3 · dotnet/core · Discussion #9271
https://github.com/dotnet/core/discussions/9271
.NET 9 Preview 3 がリリースされた。
このリリースでは TimeSpan.From* に対するオーバーロードの追加、動的に生成したアセンブリを保存できる PersistableAssemblyBuilder の追加、例外ハンドリングの高速化、共有ジェネリクスの実行時ルックアップのインライン化、ターミナルロガー(dotnet
コマンドの出力)のユーザビリティ強化などが含まれている。
その他、ML.NET の Tokenizer の強化、ActivatorUtilities.CreateInstance のActivatorUtilitiesConstructor 属性を常に使用するようになるといった変更も行われている。
.NET April 2024 Updates – .NET 8.0.4, 7.0.18, .NET 6.0.29 - .NET Blog
https://devblogs.microsoft.com/dotnet/april-2024-updates/
.NET 8.0.4, 7.0.18, 6.0.29 がリリースされた。
このリリースは2024年4月のアップデートで、いくつかの不具合の修正と WPF の特権昇格の脆弱性の修正が含まれている。
ReSharper 2024.1: Improved Handling of Collections, Collection Expressions, and Disposable Resources, New Assembly Diff Tool Window, and More | The .NET Tools Blog
https://blog.jetbrains.com/dotnet/2024/04/09/resharper-2024-1/
ReSharper 2024.1 がリリースされた。
このリリースではコレクション式のサポート強化やコレクションの変更の解析、ISpanFormattable
などのフォーマット系メンバーの生成、非同期メソッド内の Disposable のサポートの強化、Razor のサポートの改善、ソリューションワイド解析の高リソース利用モード、リファクタリングの速度改善などが含まれている。
そのほか Assembly Diff ビューの追加やコマンドラインツールの出力フォーマットの SALIF のデフォルト化なども含まれる。
Rider 2024.1: A Better Experience for Debugging, Performance Monitoring, and Game Development | The .NET Tools Blog
https://blog.jetbrains.com/dotnet/2024/04/09/rider-2024-1/
Rider 2024.1 がリリースされた。
このリリースではデバッグ中のメモリー使用量や CPU 使用率を表示できる Monitoring ツールウィンドウの追加、コレクションビジュアライザー、ステップ時間表示、Blazor WebAssembly のホットリロード、エディターでの固定行表示、更新された新しいプロジェクトダイアログ、ReSharper 同様の C# のサポートの強化が含まれている。
その他 Unity の Odin Inspector サポート、.NET Aspire プラグイン、AI アシスタントのアンバンドル(プラグイン化)といった変更も含まれている。
dotCover, dotMemory, dotPeek, and dotTrace 2024.1 Are Out! | The .NET Tools Blog
https://blog.jetbrains.com/dotnet/2024/04/09/dotnet-tools-241-release/
dotCover, dotMemory, dotPeek, dotTrace 2024.1 がリリースされた。
- dotMemory 2024.1
- デスクトップ MAUI アプリケーションのサポート
- Frozen Objects Heap (FOH) のサポート
- Linux および macOS での新しいビュー (Similar Retention, Sunburst dialog)
- macOS において実行ファイルの代わりにアプリケーションバンドル
.app
を指定するオプション - JetBrains Rider での macOS 実行構成でのプロファイリング。対応フレームワーク:
net7.0-macos
,net8.0-macos
- dotTrace 2024.1
- デスクトップ MAUI アプリケーションのサポート
- UI プリセット (特定のアプリケーションに向けた UI の表示構成)
- macOS において実行ファイルの代わりにアプリケーションバンドル
.app
を指定するオプション - JetBrains Rider での macOS 実行構成でのプロファイリング。対応フレームワーク:
net7.0-macos
,net8.0-macos
,net7.0-maccatalyst
,net8.0-maccatalyst
,Xamarin.Mac
- dotCover 2024.1
- MAUI のカバレッジ解析 (.NET 7 以降の WinUI デスクトップアプリケーションのみ)
- コードカバレッジハイライトの改善
- dotPeek 2024.1
- 新たに独立した Assembly Diff ツールウィンドウ
- Web Assembly の WebCIL パッケージフォーマットのサポート
Version 1.5.2 - Stable channel release notes for the Windows App SDK - Windows apps
Windows App SDK 1.5.2 がリリースされた。
このリリースではいくつかの不具合修正に加え、Widget に関する API の追加が含まれている。
.NET Aspire preview 5 - .NET Aspire
https://learn.microsoft.com/ja-jp/dotnet/aspire/whats-new/preview-5
.NET Aspire preview 5 がリリースされた。
このリリースではパッケージの分割や様々な API の変更、ダッシュボードの改善、Visual Studio Code C# DevKit からの起動、Azure Event Hubs や NATS, Seq といったコンポーネントのサポート、Azure サポートの強化、AWS サポートの追加といったものが含まれている。
Introducing MSTest SDK - Improved Configuration & Flexibility - .NET Blog
https://devblogs.microsoft.com/dotnet/introducing-mstest-sdk/
MSBuild Project SDK をベースにした MSTest SDK についてのアナウンス。
MSTest に必要な構成が含まれたプロジェクト SDK が提供されることで、デフォルト値が提供され利用も簡素化される。
Announcing pl/dotnet, version 0.99 (beta)
https://www.postgresql.org/about/news/announcing-pldotnet-version-099-beta-2838/
pl/dotnet 0.99 (ベータ) がリリースされた。
pl/dotnet は PostgreSQL に C#/F# サポートを追加するしくみで、.NET で関数やプロシージャといったものを記述できる。ベンチマークによると C#/F# は最速の Procedural Language (PL/*) であるとのこと。PostgreSQL ライセンスにて提供される。
We added C# and F# support to PostgreSQL. It's the best-tested and fastest procedural language in PostgreSQL, in our benchmarks.
— Todd Lewis (@toddglewis) April 9, 2024
It's also the only one that maps the database to stored procedures using the native database API, allowing DLLs to run unmodified in the client or…
アーティクル、スライドなど
Build & test resilient apps in .NET with Dev Proxy - .NET Blog
https://devblogs.microsoft.com/dotnet/build-test-resilient-apps-dotnet-dev-proxy/
外部 API の呼び出し時におけるパフォーマンス悪化やエラー、レートリミットといった問題を Dev Proxy を使用してシミュレートして開発する方法についての紹介。
How to use GitHub Copilot Chat in Visual Studio - Visual Studio Blog
https://devblogs.microsoft.com/visualstudio/how-to-use-github-copilot-chat-in-visual-studio/
Visual Studio での GitHub Copilot Chat の使用方法について。
記事では Copilot Chat を使用したコードの変換時の操作やプレビューについて紹介している。
Exploring Collections & DataTables | The .NET Tools Blog
https://blog.jetbrains.com/dotnet/2024/04/15/exploring-collections-and-datatables/
Rider 2024.1 に組み込まれたコレクションビジュアライザーの紹介。
新しいコレクションビジュアライザーでの絞り込みや検索、チャート形式での表示といった機能について触れている。
Streamline your container build and publish with .NET 8 - .NET Blog
https://devblogs.microsoft.com/dotnet/streamline-container-build-dotnet-8/
.NET 8 の dotnet コマンドでコンテナーイメージをビルド、発行する方法について。
記事では簡単な使い方から、ディストリビューションの変更や chiseled/extra イメージについて触れている。
How to Test Logging with FakeLogger
https://dev.to/canro91/how-to-test-logging-with-fakelogger-4dgc
Microsoft.Extensions.Diagnostics.Testing の FakeLogger を使用したテスト方法について。
.NET Aspire dashboard is the best tool to visualize your OpenTelemetry data during local development
https://anthonysimmon.com/dotnet-aspire-dashboard-best-tool-visualize-opentelemetry-local-dev/
.NET Aspire ダッシュボードを .NET Aspire とは関係なくローカル開発での OpenTelemetry のダッシュボードとして使用する方法について。
Blazor Web App + ASP.NET Core Identity にカスタムユーザークレームを使用した認証と認可を実装する
https://zenn.dev/hat_kotap/articles/421e9bc3419aa8
Blazor Web App と ASP.NET Core Identity の組み合わせでの認証と認可を実装する方法について。
Useful features in Entity Framework Core 8 for your application
https://dateo-software.de/blog/entity-framework-8
Entity Framework Core 8 の便利な機能の紹介。
記事ではプリミティブコレクションマッピング、複合型、JSON カラム、Sentinel 値を取り上げている。
Error以上のログ出力するときにVisualStudioを中断/ブレークする忘備録 - Qiita
https://qiita.com/kokeiro001/items/ee6221153ed868f77733
エラーログ出力時にデバッガーをブレークするアイデアについて。記事では Serilog での実装例を紹介している。
Automated NuGet package version range updates in .NET projects using Renovate
NuGet パッケージバージョンを Renovate でアップデートする際にバージョンが範囲指定となっている場合の対処方法について。
App Service にデプロイした .NET アプリの応答遅延を分析する - Qiita
https://qiita.com/georgeOsdDev@github/items/166d9ed85c1effc648e8
Azure App Service にデプロイした .NET アプリケーションのパフォーマンス分析を行うためのポイントやツールといったものの紹介。
- [App Service にデプロイした .NET アプリの応答遅延を分析する その2 - Qiita])(https://qiita.com/georgeOsdDev@github/items/825bbc63679472248e1a)
Semantic Kernel で JSON Mode を使おう
https://zenn.dev/microsoft/articles/semantic-kernel-v1-005
Semantic Kernel で OpenAI API の JSON モード (JSON で回答を受けとれるモード) を使用する方法について。
TreatWarningsAsErrors and warnaserror are not the same
https://dev.to/asimmon/treatwarningsaserrors-and-warnaserror-are-not-the-same-4h9c
.csproj の TreatWarningsAsErrors
と dotnet build
のスイッチ -warnaserror
の違いについて。
Introducing the new Copilot experience in Visual Studio - Visual Studio Blog
https://devblogs.microsoft.com/visualstudio/introducing-the-new-copilot-experience-in-visual-studio/
GitHub Copilot 関連の機能が Visual Studio 17.10 Preview 3 で統合されたことについての紹介。
Visual Studio 17.10 以降、GitHub Copilot および Copilot Chat は1つに統合され、 Visual Studio のコンポーネントの一部として提供される。
【C#】サーバー側でAndoridのレシートを署名検証する - Qiita
https://qiita.com/simoyama2323/items/cdbb45031bbef405bd25
Google Play のレシート検証を行う方法について。
【C#】Azure.AI.OpenAI パッケージで AOAI & Azure AI Search を使う RAG と Chat のコード例
https://zenn.dev/jtechjapan_pub/articles/cf284df0a1c693
Azure.AI.OpenAI を使用して Azure OpenAI と Azure AI Search で RAG を行うチャットの例の解説。
Dapr を使ってみる - State management 編 - Qiita
https://qiita.com/takashiuesaka/items/713499c531095d5687c2
Dapr でステート管理を行うサービスを使用する方法について。
記事では Redis を立ち上げる手順や .NET アプリケーションから利用する方法、.NET Aspire との連携についても触れている。
[C#] Visual Studio 2022 で古い .NET Framework を使えるようにする方法 (.NET Framework 2.0 以降) - Qiita
https://qiita.com/diontools/items/b193ae8394161fc26698
Visual Studio 2022 で公式サポート外の .NET Framework を使用できるようにする方法について。
AspireプロジェクトとAzure Functions プロジェクトを並行開発する
https://zenn.dev/jtechjapan_pub/articles/d51d86c3105634
.NET Aspire と Azure Functions を組み合わせたプロジェクト開発構成について。
EF Core で MySQL の UUID_TO_BIN, BIN_TO_UUID と同じフォーマットにするメモ
https://zenn.dev/hikarin/articles/6964d684573076
Entity Framework Core で Guid を MySQL の UUID_TO_BIN
, BIN_TO_UUID
に合わせた形に変換する方法について。
Visual Studioの新しいソリューション形式slnx - kkamegawa's weblog
https://kkamegawa.hatenablog.jp/entry/2024/04/12/051622
Visual Studio 2022 17.0 Preview 3 で追加された XML ベースの新しいソリューション形式 .slnx について。
イベント
Session catalog | Microsoft Build | May 21-23, 2024 | Seattle and Online
https://build.microsoft.com/en-US/sessions
5月21日から開催される Microsoft Build のセッションカタログ。
Deep Dive on LINQ with Stephen Toub
https://www.youtube.com/watch?v=xKr96nIyCFM
Scott Hanselman 氏と Stephan Toub 氏による LINQ の実装についての解説。
Let's Learn .NET: Containers (Japanese)
https://www.youtube.com/watch?v=PFUy3W-FeAY
サイト、ドキュメントなど
ツイート
.NET 8 v .NET 9 Exception Handling benchmarks
— Dave Callan | dotnet (@Dave_DotNet) April 11, 2024
Have just ran these on preview 3, wow ❤.
76% faster handling in .NET 9 for the benchmark code I ran (in the 2nd tweet below). #dotnet pic.twitter.com/6LVeN4cRwJ