.NET Framework

.NET アプリで環境変数 .env ファイルを扱う (DotNetEnv)

NuGet で DotNetEnv のインストール

.NET アプリの設定ファイルといえば App.config (Settings.settings) が手軽で便利ですが、他のプロジェクトから参照できなかったりして不便な部分もあります。 ということで読み込みだけできればよい環境変数的な設定に関しては Web 系でのおなじみの .env ファイルを利用することにしようと思い、 DotNetEnv を使ってみま・・・続きを読む

SSH.NET で SSH サーバーのフィンガープリントを確認してから接続を完了する

SSH サーバーに接続する際、正しいサーバーか確認するために「フィンガープリント」(指紋)を利用します。 フィンガープリントは SSH サーバーからバイト列として返され、人間にはわかりにくいので、よくある SSH クライアントでは 9a:ab:2e:19:e0:4e:68:79:fa:44:b5:4b:63:48:af:1f のようなカンマ区切りの 16 進・・・続きを読む

C# Entity Framework 6 の DbContext で変更されたレコードと変更前後の値を取得する

Entity Framework 6 (以下、 EF6) では自動で変更を追跡してくれるため、 SaveChanges() を呼び出すとなんらかの変更があったレコードだけがデータベース側で変更されます。 簡単なアプリケーションではすべてフレームワーク任せでもいいのですが、少し実用的なアプリケーションを作ろうとすると、ユーザーに確認を求めたり、ログを残したりす・・・続きを読む

C# で yyyymmdd 形式の日付文字列を DateTime 型に変換する拡張メソッド

もはやタイトルにすべて書いてありますので、細かいことは省きますが、データベース等で 20180401 のように区切り文字なしで格納されている日付文字列を DateTime 型に変換します。 変換用の拡張メソッドを用意 この形式は DateTime.Parse や DateTime.TryParse でパースできないため、少々面倒です。 変換には書式指定が可能・・・続きを読む