Rem*_*mi 5 c# linq asp.net-mvc
我正在尝试将MVC项目中的两个不同的类模型连接在一起,以便我可以对它们进行升序/降序排序。我已经尝试了几种排列方式,但似乎无法使LINQ查询发挥出色。关于我在做什么错的任何建议吗?
var lateContact = from c in JPLatestContact
join s in JPStudent on c.ApplicationUserId equals
s.ApplicationUserId
orderby c.JPLatestContactDate ascending
select s;
Run Code Online (Sandbox Code Playgroud)
我是一个初学者,但是如果我正确理解这一点,那么“ c”和“ s”就是我自己做的变量。“ JPLatestContact”和“ JPStudent”是我要加入的两个模型/类/表,都具有“ ApplicationUserId”,我可以将它们加入其中,并且我想对所有结果按“ JPLatestContactDate”值排序JPLatestContact模型,按升序排列。
通过上面编写的查询,我得到一个CS0119错误“'JPLatestContact'是一种类型,在给定的上下文中无效”。
我不确定我的结构哪里出了问题,还是我在某种程度上滥用了JOIN结构?
您不能在类型上运行 LINQ 选择,只能在该类型的集合上运行 - 即任何实现IEnumerable<JPLatestContact>or的东西IQueryable<JPLatestContact>,例如List<JPLatestContact>,dbContext.JPLatestContact等。同样适用JPStudent- 您需要一个集合 or IQueryable<JPStudent>。
假设您正在查询 EF,则查询应如下所示:
var lateContact = from c in dbContext.JPLatestContact
join s in dbContext.JPStudent on c.ApplicationUserId equals
s.ApplicationUserId
orderby c.JPLatestContactDate ascending
select s;
Run Code Online (Sandbox Code Playgroud)
确保所有实体名称和属性名称与 EF 模型中定义的实际名称匹配。
| 归档时间: |
|
| 查看次数: |
53 次 |
| 最近记录: |