C#: 改行や引用符の値を含むCSVの読み取り方法

概要 値として改行や引用符を含むCSVファイルを解析するサンプルです。 CSVファイルへの出力は比較的簡単に実現できますが、読み取り・解析の難易度は高くなるので、その参考です。 業務要件やその変化に応じて柔軟に仕様を変更したい場合や、セキュリティ上の理由でサードパーティーのパッケージの利用が難しい、等を想定しています。 使用環境は次の通りです。 OS Windows 10(64ビット) IDE M […]

C#: xUnitのAssert.Equalのメッセージカスタマイズ

概要 xUnitを使った単体テストでは、実行結果(値)が期待値と一致しているかをAssert.Equal()で検証し、検証に失敗した場合は実行結果と期待値の相違個所が出力されます。検証対象によっては、相違個所のみだと原因個所が分かりづらい場合があるので、相違個所のみではなく全体の出力や出力内容そのものをカスタマイズしてみます。 [crayon-66a4c5d8bbcd3183486157/] 使用 […]

C#: EFCoreで動的にテーブル名・キー・列名等を取得

概要 xUnit等でデータベース(EFCore)を使ったテストケースを作成する際、エンティティやテーブル定義に基づいてテストデータを作成したい場合があります。そのようなユースケースをサポートするためのサンプルを紹介します。 使用環境は次の通りです。 OS Windows 10(64ビット) IDE Microsoft Visual Studio Community 2022(17.6.0) 言語 […]

PowerShell: SQL実行結果(TSV/CSV)をテキスト整形

概要 Azure Data Studio等のツールでSQLの実行結果を取得(コピー)するとタブ区切りの文字列になります。テキストベースの媒体にそのまま張り付けると、表示が崩れてしまうので、空白ベースに整形するツールを作成してみました。 Windows 10(64bit)+ PowerShell 5.1.19041の環境で動作確認しています。 スクリプトの仕様 機能概要 タブ区切りのファイルをテキス […]

THE THOR: ギャラリーの灰色枠を消す

WordPressのテーマ THE THORのギャラリーで写真を配置すると、灰色の枠が表示されます。 好みではないので消してみようと思います。 使用環境はWordPress 6.2.2-ja、THE THOR 2.4.0です。 事象 WordPressのテーマ THE THORのギャラリーで写真を配置すると、個々の画像の周りに灰色の枠が表示されます。私の好みではないので、消してみようと思います。 […]

AdSenseの広告配信の制限を回避する

事象 WordPressを使っていると、AdSenseのコンソールに次の広告制限の警告が表示される場合があります。 表示できる広告の数が制限されています。 詳しくは、ポリシーセンターをご確認ください。 広告制限の警告の詳細は次の通りです。 WordPressの記事を執筆している際に何度もプレビューページを表示することがあります。プレビューページに広告が表示されますが、そのページにクローラがアクセス […]

神津島のレンタカー運転・駐車場

移動手段とレンタカー 島内の移動手段として、村営バス、タクシー、レンタバイク、レンタサイクル、レンタカー等が考えられます。人数が少ないと少々高くなりますが、効率的に観光スポットを巡れるレンタカーがお薦めです。 手段 連絡先 備考 バス 村営バス TEL: 04992-8-0011(神津島役場) タクシー 神津島交通(丸甚運送店) TEL: 04992-8-0040/0911 都島タクシー TEL: […]

C#: partialクラスと拡張メソッドの違いと用途

ダイジェスト C#では、既存クラスに独自メソッドを追加する方法として、partialクラス(部分クラス)を使用する方法と、拡張メソッドを使用する方法があります。ここでは両者の特徴・用途や違いについて説明します。 partialクラスに類似するものとして「partialメソッド(部分メソッド)」がありますが、用途が異なるのでここでは割愛します。 観点 partialクラスのメソッド 拡張メソッド 特 […]

C#: 動的なプロパティアクセスの実装方式案と性能評価

想定する処理要件 選択値に応じて異なる値を表示する画面、出力項目のカスタマイズが可能なCSVファイル生成機能、等の業務機能を想定しています。 このような機能では、DB等のデータストアから取得したデータをエンティティに格納し、特定のプロパティの値に応じて別のプロパティの値を取得するような設計・実装を行う場合があります。 ここでは、このような特定のプロパティ値に基づいて別のプロパティ値を取得する方式を […]

Visual Studio 2022のメモリ使用量診断ツールの使い方

はじめに Visual Studio 2022にはアプリケーションの問題を診断するためのプロファイリングツールが付属しています。ここでは、プロファイリングツールに含まれるメモリ使用量を調査するためのツールを紹介します。 使用環境は次の通りです。 OS Windows 10(64ビット) IDE Microsoft Visual Studio Community 2022(17.6.0) 言語 C# […]