インドカレーファンクラブ

パソコン、カメラ

C#

C#でASP.NETばっか書いてた後にサーバサイドKotlinを使い始めて半年の感想

時系列順に C#(ASP.NET): 3 年と半年くらい Rails と Go(echo): 半年だけ C#(ASP.NET): 半年 Kotlin(SpringBoot): 半年 #now Rails と Go はあんまり好きじゃなかったので僕の母なる言語は C#にあると言っていい ということで C#(ASP.NET)から Kotlin(Spring…

【.NET5】僕が有給を犠牲に解釈した何とも言えないDDD+CQRS実装サンプル

読まなくていいあらすじ DDDだ!CQRSだ!という主張は多く見るけど、自分のやりたいことに即した実装サンプルがなかなか見つからなかった 僕はDDDというか、Repositoryパターンを組み込んだDDDにCQRSを組み込みたかった コマンド・クエリ間でデータソースは…

ボトムアップDDDを読んだ結果として自分が見返す用のメモ

要約ではないです。メモです コードでは面倒くさいので色々(例えばコンストラクタとか)端折ってる 色々間違ってるかもしれないのでちゃんと本を読んだほうがいい https://www.amazon.co.jp/gp/product/479815072X/ 本にする前のをWebで見れたりもする nrslib…

【C#】List<T>(Tはユーザ定義型)でパラメータを受ける実装を考える(考えるだけ)

はじめに List<T>(Tはユーザ定義型)でパラメータを受ける実装を考える その際にどうすれば処理が散らからないようになるのか?とか何がベストプラクティスなのか?とか考える 考えるだけ VS起動しないでコンパイラ通さず書いたコードなので通らなかったらごめん</t>…

【.NET5】【ASP.NET】フルスタックWebアプリケーションテンプレートwithコンテナ

github.com .NET CORE3.1, NET5でフルスタックなWebアプリケーションを作る時のテンプレート的なものを作りたかった MacOSで 実務の学びを活かしているけど、実務そのままとかではないし、このまま実運用した実績があるわけではない ということで実際運用し…

【C#】【Dapper】DB接続の単体テストを考える(考えるだけ)

概要 DBコネクションつくってSELECT文だして結果を返して...みたいなところのテストを考える テスト時にはInit時にfixtureみたいな感じで大量にデータつくって、Dispose時に全部消しておくみたいな... PRD/STG環境のDBはAWSのAuroraとか、EC2上のMySQLとかそ…

【.NET5】【xUnit】 MVCのControllerのテストのちょっとした例(ModelStateの状態・明示的な404のテスト)

(色々書いたけど、最後参考に載せているMS Docsに全部書いてある気がしてきた。が、目を背ける) xUnitとMoqを使う 例えばこんな感じのControllerをテストしたい時がある public class SampleController : Controller { private readonly ISampleService se…

【C#】Dapperを用いて一対多の関係にある2テーブルのレコードを階層状のクラスにマッピングする

C#

基本的にこれのJeroen Kさんの丸パクリの話を噛み砕いてるだけの記事 dapper - Multi-Mapper to create object hierarchy - Stack Overflow タイトルだけだと意味分かんないと思う Itemsテーブルと、それに対して一対多の関係にあるItemRemarksテーブルがあ…

【C#】EnumのFlagsAttributeについて

C#

【C#】EnumのFlagsAttributeについて なにそれ? FlagsAttribute クラス 列挙体をビット フィールド、つまりフラグのセットとして扱えることを示します。 https://docs.microsoft.com/ja-jp/dotnet/api/system.flagsattribute?view=netcore-3.1 Enumにつける…

【C#】Enumの列挙子から情報を得る

C#

抽象的な書き方だけど例えばenum AnimalのAnimal.Dogから名称"イヌ"だとか鳴き声"わんわん"を得るだとか、そういうことをする よくある書き方としては2パターンあると思う 属性を使う 拡張メソッドを使う どっちかというと前者の方が綺麗だけど、値の取得に…

【ASP.NET】【Rails】ASP.NETとRailsでViewのLayout

便宜上、ここではLayoutを利用するページを元のページと呼ぶことにする (適切な呼び方がわからない) かきかた ASP.NET RazorではViews/_ViewStart.cshtmlファイルの中で全てのViewに共通するレイアウトを指定する @{ Layout = "~/Views/Shared/_Layout.cshtm…

【Razor】忘れがちコードメモ

二つ目のクラスを条件に応じて付与 半角スペース空くのがちょっとださい @ { var msg = "test"; // var msg = "-"; } <div class"test @((msg != "-")? "" : "additionalClass")"> <p>@msg</p> </div> RazorでPartialにViewDataDictionaryを渡す ViewModelとしてクラスを新規に作るほどでもなくちょっとした情報を渡したい時のやつ …

【C#】忘れがちコード

null結合演算子 nullではない最初のものを返す string s1 = null; string s2 = null; string s3 = "hoge"; (s1 ?? s2 ?? s3).Dump(); // hoge null条件演算子( ?. or ?[] ) メンバやインデックスのアクセスの前にそれがnullかどうかテストしてnullじゃなかっ…