我正在更新一些旧代码库。在这个问题中,我正在处理多对多关系问题 * --- * 参考 我不需要整个参考对象,而只是附加到这个问题的参考 ID 的列表。
当前工作代码如下
var questionReferences = Repo.Questions.Find(questionId).References.ToList();
var refQuestionIds = new List<Guid>();
foreach (var qr in questionReferences)
{
refQuestionIds.Add(qr.Id);
}
我的重构看起来像这样
var referenceQuestionIds = (from r in Repo.Questions.Find(questionId).References
select r.Id).ToList();
我希望 refQuestionIds 和 referenceQuestionIds 都包含完全相同的 id 列表,但在每个测试用例中,referenceQuestionIds 最终都为空。
linq 语句有什么问题?