0

我正在寻找一种将这个 T-SQL 转换为 LINQ 的方法。

基本上,我有一个问题表。当一个人登录时,我想动态显示每个问题,然后从答案表中提供答案,该答案表由questionId(如果他们以前回答过问题)捆绑在一起。

有任何想法吗?

SELECT q.*, a.answer
FROM Questions q LEFT OUTER JOIN Answers a
ON q.questionId = a.questionId and a.personid = @personId
WHERE a.personid = @personId OR a.personid IS NULL
4

1 回答 1

0

感谢 marc_s 和 ChrisF 的评论,因为这些是我在过去一小时内获得的唯一有价值的信息。这是我解决问题的方法。我不知道这是否是实现我的目标的最佳方式。

FROM q IN db.Questions 
JOIN a IN db.Answers.Where(z=>z.personId == personId) 
ON q.questionId equals a.questionId INTO qas 
FROM suba IN qas.DefaultIfEmpty() 
WHERE suba.personId == personId || suba.personId == null 
SELECT NEW { q, a = suba }; 
于 2012-05-31T14:36:21.387 回答