我有一個父母/子女關系的模型。Year和WeekYears: YearID, NameWeeks: WeekID, YearID, Name因此,如果我有YearSelected,要獲得一年中的所有周數(shù),我會:List<Week> weeks = db.weeks.Where(w => w.YearID == model.YearSelected).ToList();model.WeekList = new SelectList(weeks, "WeekID", "Name");但是在數(shù)據(jù)庫中我只保存WeekID所以只有model.WeekSelected所以我如何獲得同年的同一周 model.WeekSelected我可以先查詢以獲取YearID,但想知道是否可以在一行中完成。int YearID = db.weeks.Where(w => w.WeekID == model.WeekSelected) .SingleOrDefault().YearID.Value;
1 回答

尚方寶劍之說
TA貢獻1788條經(jīng)驗 獲得超4個贊
您將需要使用子查詢來獲取YearID:
List<Week> weeks = db.weeks
.Where(w => w.YearID == db.weeks.First(w => w.WeekID == model.WeekSelected).YearID)
.ToList();
當您知道WeekSelected只匹配一行時,這將生成更簡單的SQL,不確定是否會對性能產(chǎn)生影響:
List<Week> weeks = db.weeks
.Where(w => w.YearID == db.weeks.Single(w => w.WeekID == model.WeekSelected).YearID)
.ToList();
- 1 回答
- 0 關注
- 203 瀏覽
添加回答
舉報
0/150
提交
取消