icon

UnityでHTTP通信するのに、上の記事だとUnityWebRequestかC#のHttpWebRequestかって感じだったけど、上の記事は2017年とちょい古いので、今のC#で使うべきはSystem.Net.Http.HttpClientかなというメモ。

主に2000年代など古めの情報を中心に System.Net.WebRequest や System.Net.HttpWebRequest, Systen.Net.WebClient を使った使ったサンプルもネット上で見つかりますが、これらは古いです。Microsoftの公式ドキュメントでもHttpClientを使うよう指示があります。ググるときはご注意ください。
2012/8/15リリースの.NET Framework 4.5から System.Net.Http.HttpClientが追加され、async/awaitを使った非同期通信にも対応、メソッド群も使いやすくなっています。DLLとしてはSystem.Net.Http.dllの中に入っています。これが現在のC#の標準となります。
【C#】System.Net.Http.HttpClientを使ってWeb APIとHTTP通信してみよう - Rのつく財団入り口

UnityもC#も、検索だと古いのが引っかかってくるしややこしい

Web site image
【C#】System.Net.Http.HttpClientを使ってWeb APIとHTTP通信してみよう
icon

エラーを握り潰す訳にも行かないし、非公開メソッドに切り出して、表面上は見通しをよくする位しかないよなぁ。それでもそのメソッド毎に3行のreturn errハンドリングは必要だから、地味に見通しが良くなりきらない。
1つのDBトランザクションを通しで、発行するクエリーも確認しながら読みたい場合は、1ファイル内で縦に行ったり来たりになるのが、地味につらい

icon

1つのDBトランザクションでテーブル10個弱に書き込みをする場合、insertしてはretrun errハンドリングで3行増え、result.LastInsertId()してはretrun errハンドリングで3行増えるから、すっごい見通しが悪い実装になってしまう・・・
insert全部に対してLastInsertIdが必要なわけじゃないけど、それでも読みにくいし、何とかならないかなぁ

icon

そういえばBLUE PROTOCOLどうなったんだろうと思ったら6月14日に始まってるとか。事前登録したのに開始のメールとか無いんか・・・