2019-12-01から1ヶ月間の記事一覧

より良いトランザクションスクリプトを目指す

ファウラーのエンタープライズアプリケーションアーキテクチャパターン(PofEAA)において、 ビジネスロジックのアーキテクチャにはドメインモデルかトランザクションスクリプトかという二択があります。 仮にプレイヤーの名前変更(ゲームでは可能なことも普通…

スマホゲームのサーバサイドアーキテクチャについてモヤモヤと考えていること

とりとめもなく書き散らかします。 テスタビリティ 真面目に単体テストを書く人がチームに入ったのでテスタビリティについて真面目に考えています。特にインゲームロジックについてはテストを組めるようにすることの価値が非常に大きいので、手間暇かけてテ…

Migrationやデザインタイムの挙動を別アセンブリに閉じ込める

「Migration用のコードがアプリ実行時に含まれるのが嫌だ。ツール実行時だけ存在すればいい」というニーズもごく普通にあろうかと思います。 EF Coreはそのあたりのオプションがちゃんと用意されています。大丈夫だ問題ない。が、結構わかりにくい挙動をしま…

シャドウプロパティ

シャドウプロパティは、エンティティclass側には存在しないがDBのテーブル側には存在する列を作る、使うための機能です。 public partial class Blog { public int Id { get; set; } public string Title { get; set; } public string Text { get; set; } } …

EntityFramework CoreでSELECTせずにUPDATEを行う

O/Rマッパーでデータの更新を行う場合は、 オブジェクトを取得して プロパティを変更して SaveChanges()を行う というのが普通です。 using(var context = new BlogDbContext()) { var blog = context.Blog.Find(1); blog.Title = "まだ〇〇で消耗しているの…