トピックス
Announcing built-in container support for the .NET SDK - .NET Blog
https://devblogs.microsoft.com/dotnet/announcing-builtin-container-support-for-the-dotnet-sdk/
.NET 7 の dotnet
コマンドからワンストップでコンテナーイメージをビルドするサポートパッケージのプレビューのアナウンス。
このサポートにより dotnet publish
でアプリケーション発行時にコンテナーイメージとしてビルドできるようになる。ベースイメージの変更といったカスタマイズが行えるほか、今後のリリースではさらなるイメージのカスタマイズポイントの追加とコンテナーレジストリーへのプッシュや Windows コンテナーイメージといったものが予定されている。
C# 11 preview: generic math, required members, and more - .NET Blog
https://devblogs.microsoft.com/dotnet/csharp-11-preview-august-update/
完成が近づいてきた C# 11 の機能 (オブジェクト初期化関連、Generic Math、開発者生産性) について紹介している記事。
- オブジェクト初期化関連
ref
フィールド- 必須メンバー
- Generic Math
- 開発者生産性
- メソッドパラメーターを対象とした
nameof
- メソッドパラメーターを対象とした
ReSharper and Rider 2022.2.2 – More Bug Fixes Delivered | The .NET Tools Blog
https://blog.jetbrains.com/dotnet/2022/08/22/resharper-and-rider-2022-2-2-bug-fixes/
ReSharper と Rider 2022.2.2 がリリースされた。
このリリースではそれぞれいくつかの不具合の修正が含まれている。
.NET MAUI Cloud Skills Challenge - Learn .NET MAUI, Get Stickers! - .NET Blog
https://devblogs.microsoft.com/dotnet/dotnet-maui-cloud-skills-challenge/
.NET MAUI Cloud Skills Challenge が9月30日までに延長された。
.NET MAUI Cloud Skills Challenge は Microsoft Learn 上の .NET MAUI のトレーニングを行うとステッカーがもらえるというキャンペーン。
.NET Framework August 2022 Cumulative Update Preview Updates - .NET Blog
.NET Framework の2022年8月の累積アップデートのプレビューがリリースされた。
このリリースにはローカリゼーションの問題と WinForms の問題の修正が含まれている。
アーティクル、スライドなど
金融の基幹システムを1年半かけて.NET 6に移行した話
https://zenn.dev/nuits_jp/articles/2022-08-26-migration-to-net6
.NET Framework で実装された金融の基幹システムを .NET 6 へと移行した事例紹介。
実例をもとに .NET 6 への以降をどのように進めたのかといったことを紹介している。
.NETのサポートポリシーのおさらい #csharptokyo
https://www.slideshare.net/YutaMatsumura/net-csharptokyo-252711803
.NET のサポートポリシーをおさらいして解説しているスライド。
System.Drawing 周りの話
https://www.slideshare.net/masatoru/systemdrawing-252711487
.NET 5/6 での System.Drawing の扱いについてのスライド。
file ローカル型 | ++C++; // 未確認飛行 C ブログ
https://ufcpp.net/study/csharp/misc/file-local/
C# 11 で導入される file
ローカル型について解説している記事。
file
ローカル型は型のアクセシビリティがそのファイルの中となるもの。記事では使い方や効果のほか導入の背景なども紹介している。
Mapping Multiple Static File Folders in ASP.NET Core - Rick Strahl's Web Log
https://weblog.west-wind.com/posts/2022/Aug/23/Mapping-Multiple-Static-File-Folders-in-ASPNET-Core
ASP.NET Core の静的ファイル配信において複数のローカルパスから配信できるようにする方法についての記事。
Detours: redirecting C# methods at runtime
https://tryfinally.dev/detours-redirecting-csharp-methods-at-runtime
Unity や Mono ランタイムで動作するアプリケーションのメソッドを実行時に差し替える方法についての記事。
[WinUI3] WinUI3でウインドウプロシージャをフックする(最大/最小ウインドウサイズの指定にも使える) - Qiita
https://qiita.com/tera1707/items/75609595f4d42e0ac160
WinUI 3 のアプリケーションでウィンドウプロシージャーをフックしてサブクラス化する方法についての記事。
[ Malware Analysis #4] —Eternity Project — Eternity Stealer
https://0xm3h51n.medium.com/malware-analysis-4-eternity-project-eternity-stealer-682df3f0dafd
"Eternity Project" というマルウェアサービスのサンプルマルウェアを解析するという記事。
記事では .NET 製のマルウェアを解析してどのようにして難読化されているか、どのようなことを行っているのかといったことに触れている。
ASP.NET Core 6: Handling gRPC exception correctly server side
https://anthonygiretti.com/2022/08/28/asp-net-core-6-handling-grpc-exception-correctly-server-side/
ASP.NET Core の gRPC サービスでのサーバーサイドの例外ハンドリングについての記事。
記事では Interceptor を使用することで各メソッドの呼び出し中に発生した例外をハンドリングしてクライアントに伝える情報をコントロールしている。
Strongly Typed Middleware in ASP.NET Core
https://www.mikesdotnetting.com/article/359/strongly-typed-middleware-in-asp-net-core
ASP.NET Core のミドルウェアを規約ベースではなく IMiddleware
インターフェースによって実装することについての記事。
Add persisted parameters to CLI applications in .NET
https://dev.to/nikiforovall/add-persisted-parameters-to-cli-applications-in-net-5cgd
System.CommandLine を使用した CLI アプリケーションで、設定ファイルにコマンドのパラメーターを永続化しておく方法についての記事。
C# Source Generator で将棋の指し手生成を生成して高速化してみた
https://zenn.dev/tomori_k/articles/f2bcaf312bc946
Source Generator を使用して、元となるコードを読み込み、書き換えを行ったうえで生成することで処理を高速化するというテクニックについての記事。
Xamarin のサポート終了と .NET 統合の話
https://zenn.dev/mayuki/articles/64f86fbc1d3da0
Xamarin のサポート終了による .NET への統合、MAUI の位置づけについてまとめた記事。
.NET7.0 の Generic Math についてメモ - Qiita
https://qiita.com/YuHima03/items/11dd31f8f380b1c1311d
C# 11 / .NET 7 の Generic Math で使用されるインターフェースを紹介している記事。
Deploy a C# & .NET Core Website to Kubernetes in 5 Minutes with Jetpack.io
https://dev.to/robrich/deploy-a-c-net-core-website-to-kubernetes-in-5-minutes-with-jetpackio-17da
Kubernetes に簡単にデプロイできるようにパッケージングなどを行う Jetpack.io というツールを使用して .NET アプリケーションをデプロイする方法についての記事。
.NET MAUI eBook Now Available - Enterprise Application Patterns - .NET Blog
https://devblogs.microsoft.com/dotnet/dotnet-maui-ebook-released/
.NET MAUI の eBook "Enterprise Application Patterns using .NET MAUI" が利用できるようになったというアナウンス。
Use Keycloak as Identity Provider in ASP.NET Core 6
https://dev.to/nikiforovall/use-keycloak-as-identity-provider-in-aspnet-core-6-4c7g
オープンソースのアイデンティティとアクセス制御管理の Keycloak を ASP.NET Core から Identity Provider として使用する方法についての記事。
Entity Framework Core and Multiple Database Providers | The .NET Tools Blog
https://blog.jetbrains.com/dotnet/2022/08/24/entity-framework-core-and-multiple-database-providers/
Entity Framework Core で複数のデータベースプロバイダーを扱う方法についての記事。
このようなケースが必要になるものとしてアプリケーションをセルフホストできるようにする場合、顧客の環境やニーズに合わせたデータベースでの対応が必要となる場合があるとしている。
Using the new Composition Renderer in Avalonia 11
https://dev.to/adirh3/using-the-new-composition-renderer-in-avalonia-11-1k0p
Avalonia 11 の新しいコンポジションレンダラーに関する記事。記事では特にアニメーションについて触れている。
Using CancellationTokens in ASP.NET Core minimal APIs
https://andrewlock.net/using-cancellationtokens-in-asp-net-core-minimal-apis/
ASP.NET Core での CancellationToken の取り扱いの必要性と Minimal API での使用方法についての記事。
リクエストに長時間かかるようなケースなどでは CancellationToken をケアすることが価値を持つこと、ミドルウェアでハンドリングできることなどが書かれている。
Processing Open Street Map data with F# and .NET Interactive
https://dev.to/cognipla/processing-open-street-map-data-with-f-and-net-interactive-4lh6
Open Street Map から生成したデータを F# と .NET Interactive で処理するという記事。
ASP.NET Custom Metrics with OpenTelemetry Collector & Prometheus/Grafana
https://dev.to/cdennig/aspnet-custom-metrics-with-opentelemetry-collector-prometheusgrafana-1hp
ASP.NET Core アプリケーションから OpenTelemetry でカスタムメトリクスを Prometheus、Grafana を使用して取り扱う方法についての記事。
ライブラリ、リポジトリ、ツールなど
dodyg/practical-aspnetcore: Practical samples of ASP.NET Core 2.1, 2.2, 3.1, 5.0, 6.0 and 7.0 projects you can use. Readme contains explanations on all projects.
https://github.com/dodyg/practical-aspnetcore
ASP.NET Core の様々な幅広いユースケース(Minimal API から YARP, gRPC などまで)のサンプルコード集。
microsoft/peeker: Roslyn analyzers on .NET binaries
https://github.com/microsoft/peeker
コンパイル済みの .NET アセンブリーを逆コンパイルして Roslyn Analyzer にかけ、その結果を SARIF として出力するツール。
サイト、ドキュメントなど
ツイート
https://t.co/pOKpJALuo2
— Jared Parsons (@jaredpar) August 25, 2022
This is what the C# compiler team uses to troll the C# IDE team with perf issues.
Visual Studio のエディター拡張のパフォーマンステストにちょうどいい巨大な C# ファイルはないか?という質問に対する答え。