как сделать запрос из двух таблиц в C# ASP MVC 5 - PullRequest
0 голосов
/ 23 апреля 2020
[Table]
public class  ChurchMember {       
        public int MemID
        public string MemberNo
        public string Fname
        public string Sname
        public string Othername 
        public DateTime? MDOB 
        public MGender Gender 
        public string PofBirth 
        public string Branch 
}
[Table]
public class NewBirth {
        public int NewBID 
        public System.DateTime? NewBDate
        public string NewBPlace 
        public string MinInCharge 
        [ForeignKey("ChurchMember")]
        public int Member { get; set; }
        public virtual ChurchMember ChurchMember { get; set; }
}

Я хочу запросить таблицу NewBirth, используя поля таблицы ChurchMember (имя или фамилия)

1 Ответ

0 голосов
/ 23 апреля 2020
  1. В модели ChurchMember добавьте свойство навигации в NewBirth. Я полагаю, что у члена Церкви может быть много новорожденных (возможно, потомство)
public class  ChurchMember {       
        public int MemID
        public string MemberNo
        public string Fname
        public string Sname
        public string Othername 
        public DateTime? MDOB 
        public MGender Gender 
        public string PofBirth 
        public string Branch

        // add this
        public virtual List<NewBirth> NewBirths {get;set;}
}
Поскольку мы определили NewBirth как свойство virtual, виртуальный в модели EntityFramework означает, что связанный объект будет загружен с отложенной загрузкой или автоматически.
// get the first church member
var churchMember = yourDbContext.ChurchMember.FirstOrDefault();

// get the properties of the first newbirth associated to that church member
string newBirthFirstName = churchMember.NewBirths.FirstOrDefault().Fname;
string newBirthLastName = churchMember.NewBirths.FirstOrDefault().Fname;
...