我必须创建2个列表,我正在寻找最佳实践,并最终寻求单行语法!
我正在使用Entity Framework,并且有3个表:
public class Position
{
public int ID { get; set; }
public string Name { get; set; }
}
public class Training
{
public int Id { get; set; }
public string Name { get; set; }
}
public class Association
{
public int Id { get; set; }
public Impact Impact { get; set; }
public int TrainingId { get; set; }
public virtual Training Training { get; set; }
public int PositionId { get; set; }
public virtual Position Position { get; set; }
}
public enum Impact
{
Optional,
Mandatory
}
我必须选择Association
表中提到的所有培训为必选或可选(我的意思是必须在Impact
列中填充Impact.Optional
)和{{1 }}是我通过参数或其他方式给它的!
我该怎么做?
答案 0 :(得分:1)
尝试一下
public List<Training> GetOptionalTrainings(int positionId)
{
_context.Associations
.Where(a => a.Impact == Impact.Optional && a.PositionId == positionId)
.Select(a => a.Training)
.ToList();
}
答案 1 :(得分:0)