これは私の最初の投稿ですので、正しい手順に従わなかった場合は私をよろしくお願いします。 また、私は今週初めてEF-Codeを学び始めたので、私はとても新しく、stackoverflowのすべてのソリューションを理解することは実際にはありません。テーブルの外部キーが2つのテーブルの1つを指しています
問題: 私は3つのクラスを持っています:ユーザー、テナントとダッシュボード。
ダッシュボードは、ユーザーまたはテナントのいずれかにしか使用できません。 つまり、ユーザーにはダッシュボードがあり、テナントにはダッシュボードがあります。 ユーザーとダッシュボードの間には常に1対1の関係があります。 テナントとダッシュボードについても同じことが言えます。
これらの関係を作成するにはどうすればよいですか?
私は、多くのデータ注釈方法と流暢なAPIメソッドを読んだことがありますが、それをどうやって取得するかについてはまだ唖然としています。以下のユーザーとテナントの両方で
public class User
{
[Key]
public int ID { get; set; }
public int TenantId { get; set; }
public virtual Tenant Tenant { get; set; }
}
public class Tenant
{
[Key]
public int ID { get; set; }
public string Name { get; set; }
}
public class Dashboard
{
[Key]
public int DashboardId { get; set; }
public string Description { get; set; }
}
を持っています。しかし、あなたのユーザクラスにはテナント用のナビゲーションプロパティがあり、ダッシュボード用のものはありません。 –
はい、これは本当に2つのクラスの例に過ぎません。データアノテーションが機能しなくなったため、データアノテーションを削除しました。私は「未完成のクラス」の例を挙げることができ、誰かが「それらを埋める」方法について私を助けてくれることを期待しました。希望は意味をなさない。 – SlapChip
あなたのケースでは、ユーザーとテナントの両方にダッシュボードの外部キーが割り当てられます。ダッシュボードの表データがユーザーの前に作成されていることを前提とします。 – Pavvy