所以我有這個需要檢查問題的答案與數據庫中的正確答案。Linq的方式來檢查一套對另一套房產的財產
Obj1.Answer == Obj2.CorrectAnswer
而且我知道我可以做這樣的事情:
List<SimpleQuestion> listOfQ = {from user}
List<Question> testQuestions = {from db}
List<Question> correctAnswers = new List<Question>();
for (int i = 0; i < listOfQ.Count(); i++)
{
var item = testQuestions.Where(t => t.QuestionId.ToString() == listOfQ[i].QuestionId).FirstOrDefault();
if (item != null)
{
if (listOfQ[i].Answer == item.CorrectAnswer.ToString())
{
correctAnswers.Add(item);
}
}
}
但是,有沒有辦法在一個LINQ語句來做到這一點,其中Obj1.Answer == Obj2.CorrectAnswer返回對象的列表那匹配?這段代碼對我來說工作得很好,我只是好奇,如果有linq的方式來做到這一點 - 如果有我似乎無法弄清楚。
只是順便說一句,'FirstOrDefault'可以採取拉姆達。你可以寫'testQuestions.Where(t => t.QuestionId.ToString()== listOfQ [i] .QuestionId).FirstOrDefault();'as testQuestions.FirstOrDefault(t => t.QuestionId.ToString()= = listOfQ [i] .QuestionId);' –
是的,我得到resharper所有的時間告訴我。 :)它只是不是我一開始想寫的方式。 –
不resharper給你一個腳本的linq化?我總是看到,這是我學習Linq的方式。 –