エンジニアのはしがき

プログラミングの日々の知見を書き連ねているブログです

C#

スクリプトからLocalizationのStringTableCollectionのCSVインポートをさせる

UnityのLocalizationを利用する際、制作中のゲームではStringTableCollectionをCSVからインポートしていました。 ただ用途によってStringTableCollectionを複数に分割している為、CSVも分割した数だけ存在するのでGUIからのインポートがとても苦痛…。 そこで…

Unityのエディタ拡張でシーンビュー上にシェルスクリプト実行ボタンを置く

Unityのエディタ拡張を使えば、シーンビューにボタンを配置することが出来ます。普段はWindowsで開発をしているので、Git Bashで実行するシェルスクリプトのボタンを置いてみました。

Java勉強中/C#と比較しながらハマりそうなところピックアップ

どうも、ご無沙汰してました。 この度、転職先でJavaをメインに書くことになり勉強しています。 ぱっと見の文法はC#と似ているものの、実態は結構違う部分も多かったので個人的に気になる部分をピックアップしました。

.NET CoreからGCPのText-to-Speech APIでテキスト読み上げ音声を生成する

様々な企業がテキストから読み上げ音声を生成するAPIを公開していますが、その中でもGCPのText-to-Speech APIは日本語読み上げのクオリティが高かった為、実装をしてみました。 ↓Text-to-Speech APIは過去記事でラズパイ(Python)でのテキスト読み上げの時に…

S3の署名付きURLへリクエストする際の注意点

AWSを触って3年近くなりました。 勝手が分かってきた頃に便利な新サービスが登場したり、まだまだ学ぶことが多いなと思いながら最近はStepFunctionsを触っています。 さて、今回は先日S3のファイルを参照する際に微妙にハマってしまったことについて書いてい…

VSCodeで.NET Core(CUI)アプリの入力を受け付けたい

先日、.NET Coreでコンソールアプリを作る機会がありました。 VSCodeで何も意識せずにF5でデバッグしようとすると、コンソールに出力はされるものの、 Console.Readline()で入力を受け付ける処理で、入力を受け付けてくれずに処理が止まってしまうことに気づ…

RDS Proxyを使いたかったけどNpgsqlから接続できなかった(解決済み)

AWSでLambda+RDSの構成を構築すると、Lambda自身が起動の度にRDSへのコネクションを張る為に負荷が大きく、あまり宜しくない構成であると言われてきました。 そのような構成の場合、RDS ProxyをDBプロキシとしてRDSの手前に配置することでコネクションのプー…

.NETライブラリのClosedXMLで既存のExcelファイルを編集する

Excelは好きですか? 僕は嫌いです。規則性に乏しい罫線やセル結合にまみれたエクセルを加工するとかうんざりしますね。 …しかしながら最近既存エクセルのプログラムによる修正を強いられましたのでその方法を記録しておきたいと思います 本記事では.NETライ…

Docker上でASP.NET CoreのWebAPIを動かす

ASP.NET CoreをDockerで動かしてみたいなーとなんとなく思ったので動かしてみました。 Visial Studioは使わず、VSCodeで動かす想定です。

Unicodeの結合文字列がバグを呼び起こしてしまった

エクセルに比べれば外部のCSVを扱う処理はまだ悩むことが少ないだろうと油断していたところ、 先日かなり頭を悩ませたので戒めとして記録したいと思います。

ASP.NET CoreがLambda上で何故か動かず四苦八苦した

何が起こったか フロントエンドから呼ばれるAPIサーバをAWS Lambda(ASP.NET Core)で構築していたのですが、 とあるリリース作業時に最新バージョンをLambdaへデプロイした後、APIサーバが常にエラーを返すようになってしまいました。 原因 ASP.NET Coreの…

.NETライブラリのClosedXMLでExcelファイルを生成する

Excelは好きですか? 僕は嫌いです。大概の内容はマークダウンで済むと思っています。 しかしながら、最近バックエンド(ASP.NET Core)でExcel出力機能の実装を強いられましたのでその方法を記録しておきたいと思います。 ↓フロントエンド(Node.js)でエクセル…

Lambdaで安易に静的メンバーを扱ってドハマリした

業務では、C#でAWS Lambdaをでゴリゴリに使い倒すことが多いのですが、 先日、短期間に連続してLambdaを実行すると意図したレスポンスが得られないというバグが発生し、半日程溶かしてしまいました。 戒めとして、Lambdaでの静的メンバーの扱いについて調べ…