記事詳細
- 投稿日
- 2026年01月01日21時55分
-
タイトル
-
個別アカウント構築関連クラス
- 内容
-
コード例
1.
UserIdプロパティ- 型:
string?(nullable 文字列) - 役割: 関連するユーザーの 主キー(Id) を保持する外部キー列。
IdentityUserのIdプロパティ(通常は GUID 文字列)と対応します。?が付いているので、null を許容します(ユーザーが紐づかない場合もある)。
2.
[ForeignKey("UserId")]属性- 意味: 下の
Userナビゲーションプロパティが、UserId列を外部キーとして使うことを明示。 - Entity Framework Core が自動的にリレーションを認識できるようにするための設定。
3.
public IdentityUser? User { get; set; }- ナビゲーションプロパティ
UserIdに対応する 実際のユーザー情報 を参照するためのプロパティ。IdentityUserは ASP.NET Core Identity が提供するユーザーモデル。
?が付いているので、関連ユーザーが存在しない場合はnullになる可能性があります。
4. 関係性のイメージ
このコードは 「1人のユーザーが複数のエンティティを持つ」 という 1対多 の関係を表します。
例:
✅ まとめると
UserId→ 外部キー(ユーザーのIdを保持)[ForeignKey("UserId")]→UserプロパティがUserIdを使うことを指定User→ 実際のユーザー情報(IdentityUser)を参照するためのナビゲーションプロパティ
もし希望があれば、このコードを Fluent API で書く方法 もお見せできますが、やりますか?
Powered by Froala Editor
- 型:
-
添付画像
-
画像はありません
- Genreのカテゴリ-名
- Models