C#– category –
-
C#
SQL Server の DBNull を C# で安全にハンドリングする5つのイディオム
SQL ServerのDBNullをC#で安全にハンドリングする5つのイディオム みなさんこんにちは!ヒロポンです!! 今回は業務系のC#でガチで踏みやすいやつ!!の話。 朝、客先で席に着いてOutlookを開いた瞬間、「また昨日のバッチが落ちてます」と肩を叩かれる、... -
C#
C# DataTable を LINQ でフィルタ・GroupBy・分割する3パターン
C# DataTableをLINQでフィルタ・GroupBy・分割する3パターン みなさんこんにちは!ヒロポンです!! C#のDataTableいじってると、「これLINQで書きたい」って思った瞬間にコンパイルエラーで止まる、ってこと、ないっすか?? // ❌これは動かない var act... -
C#
C# OpenFileDialog をフォームのフィールドにする時の正しい書き方
C# OpenFileDialogをフォームのフィールドにする時の正しい書き方 みなさんこんにちは!ヒロポンです! C# WinFormsでファイル取り込み機能を作る時、OpenFileDialogをどう持つか、毎回ちょっと迷うこと、ないっすか? //多くの人がこう書いてる(俺も最初... -
C#
C# でリストの重複を一意にする3つの書き方(Distinct / GroupBy / HashSet)
C#でリストの重複を一意にする3つの書き方(Distinct / GroupBy / HashSet) DataAdapterで取ってきたDataTableをList<T>に詰め替えて、画面に表示するためにマージしたら同じ顧客IDが2回出てくる ──。業務系でListの重複を取り除く処理は、毎週のよ... -
C#
C# Interface の継承判定と暗黙キャストの定石(is / as / 暗黙キャスト 3パターン)
みなさんこんにちは!ヒロポンです! 今回はC#業務系でInterface触る時にガチでよく迷うやつ!!の話。 DataAccess層を抽象化したくてIDataLoaderみたいなInterfaceを切ったはいいけど、「呼び出し元でis使うべき??それともas??それとも普通に(IDataLo... -
C#
C# Linq で Null を回避する書き方とパフォーマンス(業務SEのコピペで動くやつ)
みなさんこんにちは!ヒロポンです! 今回は業務SE現場でガチで踏みやすいやつ!!の話。 「DataTableからList<T>に積んでLinqでフィルタかけたら、NullReferenceExceptionで落ちた」「Where書いたのに件数が合わない」「First()とFirstOrDefault()... -
C#
C# DataAdapter.Update() で DBNull 例外が出た時の最短対処
C# DataAdapter.Update()でDBNull例外が出た時の最短対処 朝、客先で席に座った瞬間に「障害発生してます」と肩を叩かれる。ログを見たらSystem.InvalidCastExceptionの文字列の下にDBNullが並んでる。心当たりはある。昨日触ったDataAdapter.Update()だ。... -
C#
C# DataGridView の DataSource を後から変更する全パターン
C# DataGridViewのDataSourceを後から変更する全パターン 検索ボックスでフィルタかけてDataGridViewを更新するだけ、のはずだったのに、なぜか列が倍に増えて、ヘッダーが日本語と英語の混在になり、選択行のイベントが二重で飛んでくる──。VS2019・.NET ... -
C#
C# のコールバック・デリゲート・イベントの違いを業務SEが30分で腹落ちさせる
C#のコールバック・デリゲート・イベントの違いを業務SEが30分で腹落ちさせる みなさんこんにちは!ヒロポンです! C#触ってると、Button.Click += handlerみたいな書き方は毎日使うのに、いざ「コールバックとデリゲートとイベントって何が違うの?」と聞... -
C#
C# WinForms の Form.ShowDialog と Form.Show の違いと使い分け完全ガイド
C# WinFormsのForm.ShowDialogとForm.Showの違いと使い分け完全ガイド みなさんこんにちは!ヒロポンです! WinFormsの業務アプリ書いてると、サブフォーム出すたびにShowDialogにするかShowにするかで毎回ちょっと迷うこと、ないっすか? 俺も最初の頃、...
