第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何設(shè)置具有兩個(gè)外鍵的實(shí)體?

如何設(shè)置具有兩個(gè)外鍵的實(shí)體?

C#
qq_笑_17 2021-05-10 17:57:23
我有一個(gè)實(shí)體,該實(shí)體有兩個(gè)指向其自己的表的外鍵。看起來(lái)是這樣的:public class SystemUser : BaseModel{    [Column("SystemUserId")]    public override Guid ID { get; set; }    public string Username { get; set; }    public string FirstName { get; set; }    public string LastName { get; set; }    public string Email { get; set; }    public string MobilePhone { get; set; }    public Guid? MobilePhoneProviderId { get; set; }    public virtual MobilePhoneProvider MobilePhoneProvider { get; set; }    public Guid? ManagerId { get; set; }    public virtual SystemUser Manager { get; set; }    public Guid? AdminAssistantId { get; set; }    public virtual SystemUser AdminAssistant { get; set; }    public bool IsActive { get; set; }    public bool SendEmail { get; set; }    public string FinaleUsername { get; set; }    public string FinalePassword { get; set; }    public int? FloatUserId { get; set; }    public Guid? SystemUserTypeId { get; set; }    public virtual SystemUserType SystemUserType { get; set; }    public Guid? SystemUserJobFunctionId { get; set; }    public virtual SystemUserJobFunction SystemUserJobFunction { get; set; }    public Guid? SystemUserJobRoleId { get; set; }    public virtual SystemUserJobRole SystemUserJobRole { get; set; }    public Guid? SystemUserLocationId { get; set; }    public virtual SystemUserLocation SystemUserLocation { get; set; }    public virtual ICollection<SystemUserRole> Roles { get; set; }}注意AdminAssistant和Manager屬性。但是,這給了我以下錯(cuò)誤:無(wú)法確定類型'SystemUser'和'SystemUser'之間的關(guān)聯(lián)的主要終點(diǎn)。必須使用關(guān)系流利的API或數(shù)據(jù)注釋顯式配置此關(guān)聯(lián)的主要端。如果我刪除其中的一個(gè)(無(wú)論哪個(gè),都沒(méi)關(guān)系),它都可以正常工作,但是由于某種原因,對(duì)于同時(shí)擁有它們,我感到困惑。我嘗試ForeignKey在每個(gè)屬性上添加屬性,以及使用流暢的API進(jìn)行如下配置兩者都不起作用。有什么辦法可以做到嗎??jī)H供參考,我沒(méi)有使用Code First。我正在手動(dòng)編寫(xiě)數(shù)據(jù)庫(kù)腳本,僅使用EF作為ORM。不知道這些信息是否相關(guān),但我想還是會(huì)給它。
查看完整描述

1 回答

?
MMMHUHU

TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個(gè)贊

看起來(lái)您會(huì)想要包含類似


ICollection<SystemUser> ManagedUsers {get; set;}

ICollection<SystemUser> AdminAssistedUsers {get; set;}

然后,您應(yīng)該可以執(zhí)行以下操作:


modelBuilder.Entity<SystemUser>()

        .HasOptional(x => x.Manager)

        .WithMany(x => x.ManagedUsers)

        .HasForeignKey(x => x.ManagerId)

        .WillCascadeOnDelete(false);


modelBuilder.Entity<SystemUser>()

        .HasOptional(x => x.AdminAssistant)

        .WithMany(x => x.AdminAssistedUsers)

        .HasForeignKey(x => x.AdminAssistantId)

        .WillCascadeOnDelete(false);


查看完整回答
反對(duì) 回復(fù) 2021-05-23
  • 1 回答
  • 0 關(guān)注
  • 221 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)