我有3个班级:(人事,Chirurgien和操作)
public class Personnel
{
[Key]
public int CodePersonel { get; set; }
public FullName NomComplet { get; set; }
public Adresse Adress { get; set; }
public int Age { get; set; }
public ICollection<Operation> Operation { get; set; }
}
Chirurgien
public class Chirurgien : Personnel
{
public int Nbre_anne_Exp { get; set; }
public int NoteXP { get; set; }
}
和操作:
public class Operation
{
public int OperationId { get; set; }
public DateTime DateDebut { get; set; }
public DateTime DateFin { get; set; }
public int Duree { get; set; }
public bool Etat { get; set; }
public string CIN { get; set; }
public ICollection<Personnel> Personel { get; set; }
public Patient Patients { get; set; }
public override string ToString()
{
return CIN;
}
}
我还创建了一个关联表&#34; Membre&#34;
HasMany(p => p.Personel).WithMany(v => v.Operation).Map(m => {
m.ToTable("Membre");
m.MapLeftKey("Operation");
m.MapRightKey("Personel");
});
如何获得操作失败的Chirurgien列表(Operation Etat = false)??
我使用此代码返回完整的Chirurgien列表:
public ICollection<Chirurgien> NoobDoctors()
{
var req = from t in ut.getRepository<Chirurgien>().GetAll()
select t;
return req.ToList();
}
谢谢
答案 0 :(得分:0)
如何获得操作失败的Chirurgien列表(Operation Etat = false)??
您可以使用Operation
导航属性与Any
进行过滤:
var result = from c in ut.getRepository<Chirurgien>().GetAll()
where c.Operation.Any(o => !o.Etat)
select c;
由于您已与隐式联结表配置many-to-many
关系,因此EF将为您维护表(包括查询联接)。