やる気駆動型エンジニアの備忘録

WPF(XAML+C#)の話題を中心に.NET/Android/CI やたまに趣味に関するブログです

(C#/.NET) Fluent Assertions を使ってみる

先日、ChainingAssertion の GitHub ページを見たら2022年に public archive になっていました。 代替手段としてFluent Assertionsというものがリンクにあったので試しに使ってみたので、その内容をメモします。 参考 fluentassertions.com github.com Fluen…

.NET でコードカバレッジを収集&レポートする

.NET6 を使ったアプリの開発中にコードカバレッジの収集とレポートを出力しようとしたのですが、地味に情報がまとまっていなかったので残しておこうと思います。 なお、コードカバレッジにはcoverlet.collector、レポート出力にはReportGeneratorを使用しま…

(Azure Pipelines) ビルドパイプラインの使用するリソースの値を表示する

Azure Pipelines ではパイプライン外でresourcesとして定義しているリソースの値があります。 例えば、repositoriesを使用すると別サービスのリポジトリをチェックアウトすることも可能になっており、他にもpipelinesやcontainersなどを利用することができま…

(Azure Pipelines)手動トリガー時に Agent.Name を指定して実行する方法

ビルドタスクを Self hosted な環境で実行する場合に、たまに手動トリガーを使うことがあります。 何らかの障害原因調査などで特定のエージェントに対してビルドを実行するようなケースはあります。 そんな要件を満たすにはランタイム パラメータを使用しま…

(Azure Pipelines) どういったデータがループ(each in)処理に対応しているのか検証してみる

Azure Pipelines で複数回登場するようなタスクなどを Template にまとめると再利用できるため大変便利です。 Template ではeach inという構文で反復処理(ループ処理)を行うことができます。 ただ、公式ドキュメントはあまり情報が記載されていないため、…

(Azure Pipelines) 複数リポジトリのチェックアウトステップを試してみた

Azure Pipelines では、yamlファイルが含まれているリポジトリとは異なるリポジトリをチェックアウトすることができます。 あるリポジトリが別のリポジトリに依存するような仕組みの場合、この機能を使う必要性があります。 私自身、この機能を使ったことが…

コンデンサマイクを購入しました

在宅勤務が長引き Web 会議にもなれてきた頃、1日の会議の数が増加してきました。 これまでイヤフォン型のマイクを使ってたのですが会議が長時間に渡ると耳が痛くなるのでコンデンサマイクを購入しました。 購入したもの 購入したのはこちら↓↓↓ 【Amazon限…

Azure DevOps拡張機能で自作アプリを呼び出せるかどうか試してみた

Azure DevOps 拡張機能は PowerShell を使用して開発することができますが、ちょっと PowerShell 力が足りないときに .NET 使いたいなーと思うことがありました。 しかし、リファレンス上では .NET アプリを使う方法については記載されていません。なので、…

Azure Functionsで自作したカスタムコネクタをPower Automateで使おうとしたらハマった事象と原因と回避策について

随分とタイトルの示す範囲が大きくなりましたが、そういうことです。 やろうとしていたことは「Azure Functionsで作成した関数アプリをPower Automateで使う」という至ってシンプルなものでした。 しかし、いざ実践してみると期待した通りに動作しなかったた…

(生活)スマートホーム デバイスで生活が快適になりました

先日の Amazon プライムデーセールで Alexa とスマートホーム デバイスを購入したのですが、あまりに便利だったので紹介します。 購入したもの 【Amazon App-to-App対応 Alexa認定】シンプルスマートリモコン EZCON (日本発ブランド・今ある家電をスマホで操…

(Power Automate)OData フィルタで日時を指定する方法について

先日、Power Automate で OData のフィルタを指定する際に日時を条件に設定する必要がありましたが、その指定方法にハマったのでメモしておきます。 ちなみに OData は Microsoft Graph API の操作を行うためのクエリ言語です。 docs.microsoft.com 環境 Sha…

(Power Automate)Plannerに登録したタスクの期限が近い場合に通知するフローを作成する

現在、私が所属しているチームではタスク管理ツールにMicrosoft Plannerを使用しています。 単純な親子関係のないタスクであれば簡単に管理できて、チェックリストや期限の設定もでき、進捗状況や割当状態をグラフやカレンダーで可視化することができます。 …

(Power Automate)実行中のフロー名を関数を使って取得する

小ネタです。 Power Automate で特定のチャットツールにメッセージを送るようなフローをよく作るのですが、フローが増えてくるとどれで送ってるんだっけ?となりがちです。 個人的によくやる手として以下のような一文を最後につけて送信しています。 (この…

Azure DevOps REST APIで大量のPull Requestを取得する際の注意点について

先日、Azure Repos で管理しているリポジトリの Complete 済みの全 Pull Request を取得したいという要件があったので Azure DevOps REST API を使いました。 その時、条件の指定方法によっては取得できる Pull Request の数が想定より少ない数しか取得でき…

在宅勤務になったのでコーヒーミルを買いました

私の勤務している会社は緊急事態宣言に伴い在宅勤務となりました。 普段から勤務中は個包装ドリップタイプのコーヒーを飲んでいるのですが、それらは全部会社に置き忘れてしまったので、せっかくだしコーヒーミルを買って豆を挽いて飲むようにしました。 今…

Azure Pipelines Task の拡張機能を開発する

前回は Azure DevOps の拡張機能の Hello World を実施しました。 iyemon018.hatenablog.com 今回は Azure DevOps の中でも最も利用されるであろう Azure Pipelines に自作した Task を追加していきます。 参考ページ docs.microsoft.com 今回は上記のページ…

Azure DevOpsの拡張機能を自作する -Hello World編-

Azure DevOps の拡張機能を自作する機運が高まってきたので色々調べながらとりあえず Hello World まで到達したので、その手順を備忘録として残しておきます。 なお、ここで記載している内容は2020年3月28日時点の以下のページに記載されている手順に則って…

食洗機(NP-TA3-W)を買った

今年に入ってすぐに食洗機を買いました。 パナソニックの NP-TA3-W てやつです。 パナソニック 食器洗い乾燥機 ホワイト NP-TA3-Wメディア: 折角なので実際の使用感とか食洗機を購入・使用する上でやったこと、追加で購入したものなどを、私の調べた限りあま…

(Azure Pipelines)Git Tag の情報を変数に保存・参照する

Git で Tag を使う場合、タグにはバージョン番号を付けて管理することが多いのですが、そのバージョン番号を Azure Pipelines で使いたいケースが稀にあります。 今回は Git で Tag うちされた情報を取得して Azure Pipelines の変数として保存・参照する方…

(Power Apps)Excelのチェックリスト入力アプリを作る

前回はカメラアプリを使った単独で実行可能なPower Appsアプリを作りました。 iyemon018.hatenablog.com 今回はデータ ソースにアクセスしてPower Appsを使ってデータを入力するようなアプリを作ってみます。 ということで今回は業務アプリとしてよくありが…

(Power Apps)単体で起動するカメラアプリを作る

先日、Power Platform Day Winter'19 Oosakaに参加してから、Power Appsがマイブームです。 とはいえ、私自身まだまだ初心者なので色々試しつつ遊んでいる最中です。 概要 今回は折角なのでPower Appsでカメラアプリの作り方を残しておきます。 カメラアプリ…

WPF on .NET Core 3.0アプリをAzure PipelinesでビルドしてAppCenterにリリースする

タイトルまんまです。 2ヶ月ほど前に WPF / WindowsForms に対応した App Center について色々遊んでいましたが、Distribute については .NET Framework だとちょっと面倒な部分があったので .NET Core 3.0 が GA されるまで放置してました。 9月に無事 .N…

ErgoDox EZのキースイッチとキーキャップを変えてみた

趣味の話です! 私は会社用と自宅用にErgoDox EZを使っているのですが、自宅用のは今年に入ってから購入しました。 ErgoDox EZは、現在販売されているものはキースイッチが差し替えられるようになっているため、最初購入したキースイッチが気に入らない場合…

(WPF)App Centerでクラッシュ レポートを送る

前回、App Center + WPF を使ってユーザー利用状況を収集する機能を試してみました。 今回はクラッシュ レポートで遊んでみます。 参考資料 docs.microsoft.com 今回はこの資料をベースに進めていきます。 意図的にクラッシュさせる App Center の API をテ…

(WPF)App CenterにWPFが対応したので使ってみた

devblogs.microsoft.com 上記ページでApp Centerに WPF/WinForms が対応したとのことなので早速使ってみました。 私自身これまで App Center を使ったことがなかったため、このエントリでは導入から Analytics までをチュートリアル形式で記載しています。 …

Surface Bookがモニターアーム+ノートPCスタンドで快適に使えるようになった

私は自宅の開発環境はSurface Bookを使っています。 SurfaceなのでもちろんSurface Dockも使っています。 自宅の環境で悩んだ末にモニターアーム+ノートPCスタンドの環境が自分にピッタリだったので紹介したいと思います。 これまでの問題点 私は開発すると…

Azure Pipelines で.NET Core 3.0 Preview をビルドする

前回.NET Framework のWPF プロジェクトを.NET Core 3.0 Preview へ移行したのですが、そのときAzure Pipelines ではビルドできないと思っていました。 iyemon018.hatenablog.com しかし、@kkamegawa さんからのアドバイスを頂き、自動ビルドができることが…

(WPF).NET Framework で作ったアプリを.NET Core 3.0 Preview へ移行した

.NET Framework で作成していたWPF アプリを.NET Core 3.0 Preview へ移行してみました。 というのもxUnit.NET でテストコードを書いていたんですが、.NET Framework だとテストを実行するにはxunit.console.runner を実行するしかなく、Azure Pipelines で…

ErgoDox EZ のキーキャップを変えてみた(TALP KEYBOARD)

以前、ErgoDox EZ のキーキャップを変えたのですが、そのときはDCS プロファイルだったたのでカラー バリエーションが少ない、海外でしか購入できないといった問題点がありました。 なので日本でキーキャップを購入できるところはないかなーと探していたとこ…

(Azure DevOps)Azure Pipelines で.NET Framework + xUnit のユニットテストの実行と集計方法について

.NET Framework を使ってちょっとしたプログラムを作っていたのですが、ユニットテスト プロジェクトにxUnit を使った場合のAzure Pipelines のタスク設定方法がわからなかったので備忘録として残しておきます。 Azure Pipelines でのテスト タスクは.NET Co…