C#
この記事は、C# その2 Advent Calendar 2019 の一日目の記事です。 qiita.com C# で書いたアプリをLinuxやコンテナ環境で動かすことも当たり前になりました。コンテナイメージを作成するのにCircleCI は非常に便利な機能が多く、私も多くの場面で CircleCI …
TeamsId から Bitwarden への移行をまたやってました。 tech.guitarrapc.com 作っておいてよかったということでサクッとやったのですがいくつか修正しています。 目次 目次 TeamsId2BitwardenConverter 個人のデータを移行する まとめ TeamsId2BitwardenConv…
.NET Core 3.0 では、単一バイナリ(Single-file executables)が生成可能になりました。 github.com 今回はどのようにSingle Executable生成するのか、普段は .NET Core 2.1 でビルドしたいときの分け方、dotnet global tool とビルドを分けること、GitHubリ…
.NET Core で AWS において機微情報を扱うときに、AWS Secret Manager や System Manager の Parameter Store が候補に上がります。 ここでは、Secret Manager を使った ASP.NET Core での組み込みについて書いておきます。 目次 目次 TL;DR AWS Secret の選…
非ASP.NET Core、特にGeneric Host で開発するなら必要になるVS拡張を公開していたのを忘れていました。*1 今回は、GenericHost など非ASP.NET Coreなプロジェクトでも、ASP.NET Core なプロジェクトにある Manage UserSecrets (ユーザーシークレットの管理)…
開発中、リリースのいずれにおいても「今どのバージョンなのか」という情報は重要な情報です。 とはいえ、実際に埋め込みたいのはバージョンというより「ソースコード」とくに「コミット」と連動する情報、加えて「ビルド」と紐づく情報もほしいでしょう。 …
C# のアセンブリ情報は AssemblyInfo.cs によって制御されています。 .NET Core でいくぶん取り扱いが変わったものの基本は一緒です。 たびたび忘れるので、どのように取り扱いが変わったのか制御方法をメモしておきます。 目次 目次 TL;DR Microsoft.NET.Ge…
Azure の Storage Account アクセスといえばConnection String ですが、Managed Service Identity (MSI) による AzureAD認証が可能です。(2019/3/25 に GAしたはず.... あれ?) ここでは、Storage Account ではなく MSI を使ったAzure Functions からのアクセ…
あるあるな Queue の監視ですが、自前でやらなきゃいけないなら Serverless でぺちって任せるのは楽ちんですよ、というのはよくあるパターンです。 実際にQueue Storage のモニタリングをしてみましょう。 TL;DR Azure Storage Queue や Service Bus などの…
Azure の App Service には Slotがあります。 Slotはただ利用してもそれなりにうれしいのですが、Terraform での構成とAzure DevOps の リリースパイプラインでの展開を行えるようにすることで、「CI/CD による App Service の Slot による展開前のStaging環…
最近 JWT を取り扱っているのですが、仕様上base64url フォーマットを頻繁に利用します。 C# で base64 というと、Convert.FromBase64String あたりですが、base64url にしてくれるような気の利いた仕組みはなく、入力がbase64url仕様に沿ってないとすぐに例…
以前 VS2017 で使っている拡張機能について書きました。 tech.guitarrapc.com VS2019 もRCとなり、いよいよリリースが近づいてきたにつれ、各種拡張機能もサポート対応が進んでいます。 一部はまだ対応されていないものの、今のところいい感じで使えつつある…
以前 TryRoslyn と言われてたサービスですが、今は Sharplab という名になっています。 このサービスを使うと、コードがILやネイティブコードにどのようにコンパイルされるか確認したり、実行したりオブジェクトのメモリ状態を確認できます。 例えば次の図は…
.NET Framework で Windows Service を作るときは、Windows Service のために地道に実装するのは大変.... なので、TopShelf を使うことが定番でした。以前 Nancy を Windows Service でホストする記事を書いたこともあります。 tech.guitarrapc.com では、.N…
Azure の C# 向け Storage SDK は nuget でサクッとアプリケーションに追加できます。 しかし、現時点ではWindowsAzure.Storage パッケージとMicrosoft.Azure.Storage.Xxxx パッケージに分かれており、お互いが干渉合うために混在するとAssembly Bindingsを…
Generic Host を使った場合でも、これまで .NET Core で書いてきた処理は問題なく組み込むことができます。 最近 Azure WebJobs を Generic Host で使う機会があったので見てみましょう。 ※ 社内向けブログの転載なのでシリーズ化します。 目次 目次 TL;DR; …
ASP.NET Core 2.1 で追加された Generic Host (汎用ホスト) は、non-Web App アプリの作成をASP.NET Core と似た書き心地で提供します。 今後のスタンダードとなる見込みですが、どのようにして Generic Hostを利用するのか見てみましょう。 ※ 社内向けブロ…
今のパスワード管理に小さな不満があるので長年次のパスワード管理をさがしていたのですが、Bitwardenが今ある全ての望みをかなえてくれました。 bitwarden.com 今回、TeamsId から Bitwarden に全面移行したのでその移行についてメモをしておきます。 目次 …
前回の記事でhttps 化の前段階として、はてなブログの全URLを取得しました。 tech.guitarrapc.com https化を有効にすると、mixed content が出るようになるので有効にします。 あとは、https 化したページに httpコンテンツが混じっている時に起こる、mixed …
このブログ、実はhttpのままです。 はてなブログをやめるか考えているのですが、いったんhttps対応を進めましょう。 困るのがmixed content なのですが、とっかかりとしてこのブログの全URLを取得します。 目次 目次 sitemap の取得 PowerShell CSharp Golan…
この記事は、PowerShell Advent Calendar 2018 の 22日目です。 qiita.com 今年は、PowerShell Coreについて本を書いたのですが、その中で書ききれなかった.NET Core と .NET Framework の両方で動くPowerShellモジュールの実用的なサンプルです。 目次 目次…
UWP アプリを書く必要があり、何度か挫折したXAMLに真剣に取り組んでいます。 今回は、XAMLを書くにあたって自分が導入している拡張機能とめちゃめちゃ便利なアプリの紹介です。 目次 目次 拡張機能 XamlStyler Inline Color Picker XAML 記述の確認 XAML Co…
面白い記事があったので、私もやってみます。 blog.daruyanagi.jp 毎度毎度、PowerShellっぽさとは何かなぁ思うのですが、PowerShell実践ガイドブックでもWebサイトのステータス監視などを書いたので、良い題材な気がします。 目次 目次 C# だとどう書くのか…
C# を使っていて最も困るのがランタイムと感じます。 C#は書きやすい、Visual Studio も使いやすいは良く耳にします。実際享受しやすいメリットだと思いますが、C# を Windows 以外で実行したいはどうでしょうか? 今回はその実行方法についてコンテナを用い…
この記事は、PowerShell Advent Calendar 2017 5日目の記事です。 qiita.com 昨日は @atworks さんの PSRemoting を用いたリモートプロセス実行でした。 qiita.com 3日目の前回 PowerShell のコーディングスタイルについて触れました。 tech.guitarrapc.com …
この記事は、PowerShell Advent Calendar 2017 3日目の記事です。 qiita.com 新しい言語を触るときに気になるのが、その言語はどのように書くことを意図しているのかです。私が触ってきた言語の多くは「その言語の考えの基本」となるものを持っており、コー…
Visual Studio Code も Visual Studio もExtensions と呼ばれる 拡張機能を使うことで便利な機能を追加できます。 Market Place 便利。 marketplace.visualstudio.com あまりむやみに追加すると動作が重くなるのですが、便利なものを使わない手はないので必…
Windows の TimeZone 設定といえば コマンドプロンプト以外にも PowerShell や .NETでもできます。 Windows 10 でどのようなやり方があるのか軽く見てみましょう。 目次 目次 各種方法 コマンドプロンプト PowerShell .NET (C#) WSL (Bash on Ubuntu on Wind…
2017/1/6 に Precompiled Functions がサポートされました!! この対応により、C# Scripting (.csx) に比べてかなり Azure Functions が書きやすくなります。早速Precompiled の利用とこれまでの.csxとの違いを見てみましょう。 Nice. Precompiled functions …
今回は、Unity 開発に欠かせない存在になってきた Unity Cloud Build のビルド通知をAWS Lambda (.NET Core) でいい感じに処理することを考えてみます。手始めに、他のチャット基盤 (Chatwork) への通知に取り組んでみましょう。 結果こんな通知がくるように…