CATEGORY

システムエンジニアリング

Python: 単純・日本語メールを送信(smtplib)

概要 pythonの標準モジュールであるsmtplibを使って、プレーンテキストのメールを送信するサンプルを紹介します。 Windows 10のPython 3.11.7(64bit)で動作検証しています。 サンプルでは、SMTPS, STARTTLSに対応するgmailのSMTPサーバを使用しています。 GoogleのSMTP仕様は次の情報をご覧ください。 IMAP、POP、SMTP  |  G […]

ConoHa Wingに最新のPythonをインストール

概要 ConoHa WingでpythonのWebアプリ(flask)を公開しようと思いました。2024年1月現在、ConoHa Wingにインストールされているpythonは3.6.11となっており、古くなっているので最新の3.11をインストールしようと思います。 ConoHa Wingの利用者に管理者権限は割り当てられておらず、yum等のパッケージマネージャを使用できません。そのため、ここでは […]

経験から思うアプリ構成・設定の設計ポリシー

はじめに スタンドアロンアプリケーションやクラウドベースのWebアプリケーション等の設定に関する設計ポリシーを説明します。 ここではアプリケーションの設定情報を構成(Configuration)、個々の設定項目・値のことを設定(Setting)、と表記します。(「設定」の集合が「構成」のイメージです。) 構成情報・設定を格納するストレージを「構成情報ストレージ」と表記します。構成情報ストレージの具 […]

Excelでの日付・日時とUNIX時刻の変換

Excelの日時(シリアル値)とUNIX時刻の変換例とその説明です。 Microsoft Office Professional Plus 2019(Excel 2019)で確認しています。 ダイジェスト Excelの日時(シリアル値)とUNIX時刻の変換を行う関数式の例です。 サンプルのExcelファイルは、githubで公開しています。 [crayon-65f97b07529bc2031046 […]

C#: HttpClientを使った様々なPOST送信サンプル

概要 HttpClientを使用して、テキスト、JSON、画像、マルチパートのコンテンツをHTTPで送信するサンプルを紹介します。 使用環境は次の通りです。 OS Windows 10(64ビット) IDE Microsoft Visual Studio Community 2022(17.6.0) 言語 C#(10.0) + .NET6 サンプル サンプルはgithubで公開しています。 ASP […]

C#: HttpClientの生HTTP要求・応答をダンプ

概要 外部のREST APIとの疎通でトラブルに見舞われる場合があります。このようなケースでは、REST APIとのHTTP通信の内容を把握し、問題を切り分けする必要があります。 ここでは、HttpClientのHTTP要求・応答を文字列としてダンプするサンプルを紹介します。 サンプルコードはgithubで公開しています。(サンプルの主要コードはHttpDebugUtilsです。) 使用環境は次の […]

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

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

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

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

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の環境で動作確認しています。 スクリプトの仕様 機能概要 タブ区切りのファイルをテキス […]