EF コードファースト 自動でIDの生成
2021-07-24
EF
CodeFirst
コードファストでデータベースのスキーマを管理されているときに、自動でIDを生成したときのメモです。
自動でIDを生成するときは
- GUID で文字列生成
- int または long で連番の生成
のどちらかになるかと思います。(他の例もあるとは思いますが大半がこれ?)
GUID で文字列生成
データインサート時に勝手にGUID生成して挿入しておいてほしい場合は下記です。
[DatabaseGenerated(DatabaseGeneratedOption.Identity)] [Key] public Guid Id { get; set; }
ただ、GUID指定するときは、事前にアプリケーション側で生成することによって紐づくデータを生成する際にそれをキーにするケースが多いので自動付与でデータ生成が終わるまでその値がわからない場合は若干不便。生成されたデータのIDを取得する方法もありますが、それはまた後程。
公開日: 2021-07-12