C#
備忘録です。 C#ではリテラルとの比較で is や not といった構文が使用できます。 小規模アプリや使い捨てのツールなどでは、bool変数で IsRunning としてよいかなと思います。 アプリケーション規模が大きくなるようであれば、可読性を意識して Enum で状態…
昨今の.NETのUIフレームワークで一番熱いものはBlazorなんじゃないかと思っています。 Webはもちろん、デスクトップやモバイルでもMaui BlazorによってiOSやAndroid、macOS、WindowsなんかもBlazorでUI定義が出来ます。 ここ最近の.NETはUIフレームワークが…
高速にテーブルへのデータ登録をおこなうことが出来る SqlBulkCopy をラップしたコマンドレットを自作して公開しました。 github.com www.powershellgallery.com どんなツール? サポートされたフォーマットのCSVとテーブル名を渡して実行するとCSVの値がテ…
現在、個人的なツール開発にてDataTable型を扱うような処理を作成していたのですが、普段の処理ではDataTable型を直接扱わずに任意のクラスのリスト(IEnumerable<T>)型で扱いたいです。 そこで、ChatGPTを駆使しながら、IEnumerable<T>型とDataTable型の相互変換</t></t>…
.NET5.0のコンソールアプリケーションを.NET6.0にアップグレードしてTop-Level Statementを利用しようとしたときに起きた問題です。 最上位レベルのステートメントが含まれているファイルには、そのファイルの最後の最上位レベルのステートメントの後に、名…
.NET 5 のリリースにより、 C# 9.0 が使えるようになりました。 C# 9.0 の新機能の中で注目を浴びている機能として record 型があります。 この record 型がドメイン駆動設計の値オブジェクトの設計に有用だという知見を得たので、この知見について記したい…
最近巷では dotnet core tool というものが流行っている?のを知りました。 docs.microsoft.com 一言でいうと、 npm global tool です。 Console App で作ったツールを NuGet に公開したりして使えます。 私は以前こんな記事を書きました。 neko3cs.hatenabl…
2024/2/26追記 こちらのブログで作成したコードはコマンドツールとしてリメイクしました。 github.com ちなみに、作成したツールの記事は以下になります。 www.neko3cs.net 最近 PowerShell での自動化がマイブームです。 ちょっとしたツールとかも PowerShe…
最近非同期処理関係で詰まるところがあったので、頭の整理も兼ねてまとめたいと思います。 Taskとは C#のTaskとはTaskです。 これ自体は非同期処理でもなんでもない、ただの処理の手順書に過ぎません。 // 返ってきてるのはHTTP GETするという手順のみ Task<HttpResponseMessage> </httpresponsemessage>…
LINQが登場して10年、LINQはかなり熟成、安定した技術になっています。 ですが、新規C#erやC#2.0で知識が止まっている人などおり、布教活動に休みはありません。 そんな迷える子羊達にLINQの教えを唱えます。 LINQとは LINQは統合言語クエリ(Language INteg…
C#ってどんどん進化していくので意外と知らない構文があったりします。 特に最新のC# 7.0は業務で使用出来ない都合上知らない構文ばかりです。 なので、今の段階で最新構文のうち実用性の高そうなものをまとめておこうと思います。 outパラメータ付き引数で…