نمایش نتایج 1 تا 1 از 1

نام تاپیک: ایجاد رکورد خودکار پدر در زمان ایجاد رکورد در فرزند!

  1. #1
    کاربر دائمی آواتار arman_Delta2002
    تاریخ عضویت
    تیر 1387
    محل زندگی
    بابلسر
    سن
    34
    پست
    706

    ایجاد رکورد خودکار پدر در زمان ایجاد رکورد در فرزند!

    سلام 2 تا تیبل داریم یکی Permission و Respondent که نحوه ارتباط یک به چند است یک Respondent به چند Permission

    خوب ارتباط از طریق Ef Core است و
    کد کلاس respondent

    [Table("Respondent")]
    [Serializable]
    public class Respondent : IQuickSearchObject, IUIObject
    {
    #region Constractor
    public Respondent()
    {
    //چون ریکرسیو ایجاد میکنه نباید تو کانسترکتور نیو بشه
    // AccessGroupItem = new AccessGroup();
    //PersonItem = new Person();
    TradeFundID = -1;
    IsAdmin = false; //for all user except for مدیر سیستم
    //MyAccountingConfig = new AccountingConfiguration();
    Permissions = new List<Permission>();
    }

    #endregion

    #region Property

    [DatabaseGeneratedAttribute(DatabaseGeneratedOption .Identity)]

    [Key, ForeignKey("ID")]
    public long ID { get; set; }
    [Column("password")]
    public string Password { get; set; }
    [Column("accessGroupID")]
    // [NotMapped]
    public long? accessGroupID { get; set; }
    [NotMapped]
    public virtual AccessGroup AccessGroupItem { get; set; }
    [Column("personID")]
    public long? personID { get; set; }
    [NotMapped]
    public virtual Person PersonItem { get; set; }
    [NotMapped]
    public virtual List<Permission> Permissions { get; set; }
    #endregion

    }


    کد کلاس Permission

    [Table("Permission")]
    [Serializable]
    public class Permission : IQuickSearchObject
    {
    #region Constractor
    public Permission()
    {
    //چون ریکرسیو ایجاد میکنه نباید تو کانسترکتور نیو بشه
    this.AccessCodeItem = new AccessCode();
    this.AccessGroupItem = new AccessGroup();
    this.RespondentItem = new Respondent();
    }
    #region Peroperty
    [DatabaseGeneratedAttribute(DatabaseGeneratedOption .Identity)]

    [Key, ForeignKey("ID")]
    public long ID { get; set; }

    [ForeignKey("RespondentID")]
    [Column("RespondentID")]
    [DatabaseGenerated(DatabaseGeneratedOption.None)]
    public long? RespondentID { get; set; }
    //{
    // get { return RespondentItem.ID; }
    // set { RespondentItem.ID = value; }
    //}
    [NotMapped]
    public virtual Respondent RespondentItem { get; set; }
    #endregion

    }


    کد ریلیشن بین این ها


    modelBuilder.Entity<Respondent>()
    .HasMany(e => e.Permissions)
    .WithOne(e => e.RespondentItem)
    .HasForeignKey(e => e.RespondentID)
    .OnDelete(DeleteBehavior.NoAction);


    dddd.png
    Aaaa.png
    آخرین ویرایش به وسیله arman_Delta2002 : پنج شنبه 06 خرداد 1400 در 18:50 عصر




قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •