如何将指定SQL查询转换为ASP.NET项目中的LINQ查询?
给定SQL转LINQ的实现方案
你提供的SQL作用是:通过内连接Cards与UserAnalyses表(关联条件为Cards.Id = UserAnalyses.CardId),查询去重后的CardValue字段。以下是对应的C# LINQ实现:
查询语法风格
var distinctCardValues = (from card in db.Cards join userAnalysis in db.UserAnalyses on card.Id equals userAnalysis.CardId select card.CardValue).Distinct().ToList();
方法链式调用风格
var distinctCardValues = db.Cards .Join(db.UserAnalyses, card => card.Id, userAnalysis => userAnalysis.CardId, (card, _) => card.CardValue) .Distinct() .ToList();
说明
db需替换为你项目中实际的Entity Framework上下文实例- 调用
ToList()会立即执行查询并返回List集合;若需延迟执行,可移除该方法,保留IQueryable<T>类型的结果
内容的提问来源于stack exchange,提问作者Jiddo
相关产品推荐
相关产品推荐

