我有以下LINQ查询:用IN运算符LINQ to SQL动态排序?
using (var db = new MyDataContext()) {
int[] onlineUsers = GetOnline();
var users = (from u in db.Users orderby
(onlineUsers.Contains(u.u_username) &&
u.u_hasvisible_photo) descending,
u.u_lastlogin descending select
u.u_username).Skip(startRowIndex).
Take(maximumRows).ToList();
}
这工作得很好,并产生使用IN操作符的SQL查询。
问题是int []中的每个int都通过一个不同的参数传递,我知道每个查询SQL有2100个参数的限制。
我认为使用LINQ动态库OrderBy来做排序会更好。
而不是“onlineUsers.Contains(u.u_username)& & u.u_hasvisible_photo)descending”use.OrderBy(orderquery)。
我已经在网上搜索指导或示例来做到这一点,并找不到任何help.Could社区可以帮助我的代码或链接,可以帮助我实现这一点?