我是 Linq 的新手。
我喜欢这个简单的 lambda 表达式:
crmContext.CallForTags.FirstOrDefault(x => x.CallForText.Contains(callAgainForText)).RowID;
它在一行中返回了我想要的东西。
但是有类似的 linq 表达式:
crmContext.CallForTags.Where(x => x.CallForText.Contains(callAgainForText)).Select(x => x.RowID);
我希望这会做同样的事情并返回给我 RowID
但它实际上给了我错误说:
不能将 IQueryable 隐式转换为 int
我试着在网上搜索。但是找不到类似的帖子??
任何人都可以帮助我理解,它有什么不同?在两者之间使用是否有任何性能开销?哪一种在性能方面更好?