我是Entity Framework的新手。
我有3张桌子。
Candidats : Id,cin
Poste : Id
PosteCandidats : candidat_id, poste_id
我想得到一个候选人(cin ='abc15'和poste_id = 3)
我尝试了这个,但它给了我一个错误
select * from Candidats where
id=(select Candidat_Id from PosteCandidats where Poste_Id=3)
and num_cin='abc15';
之后我想将其转换为Linq查询。
编辑:
我的模特:
public class Candidat
{
public int Id { set; get; }
public string num_cin { set; get; }
public ICollection<Poste> postes { get; set; }
}
public class Poste
{
public int Id { set; get; }
public string poste_name {set;get}
public List<Candidat> candidats {set;get;}
}
生成关联表PosteCandidats。
答案 0 :(得分:0)
linq查询可能如下所示。
var myEntities = ...; // db context
var query = myEntities.Candidats
.Where(c => c.num_cin == "abc15"
&& c.Postes.Any(pc => pc.Id == 3))
var candidat = query.FirstOrDefault();