简体   繁体   English

怎么把ADO.NET转换成LINQ?

[英]How to Convert ADO.NET to LINQ?

"SELECT TOP " + this.mintPageSize + " * FROM tblGroupDetail WHERE GroupDetailId NOT IN " + "(SELECT TOP " + intSkip + " GroupDetailId FROM tblGroupDetail)")

How Convert this Query to Linq.SomeOne tell me with Code?i have tried 我如何尝试将此查询转换为Linq.SomeOne告诉我?

var innerQuery = (from fb in db.tblGroupDetails where fb.GroupDetailID select fb).Take(this.mintPageSize); var innerQuery =(从db.tblGroupDetails中的fb中,其中fb.GroupDetailID选择fb).Take(this.mintPageSize); var result = from f in db.tblGroupDetails where innerQuery.Contains(f.GroupDetailID) select f; var结果=来自db.tblGroupDetails中的f,其中innerQuery.Contains(f.GroupDetailID)选择f;

I suspect you just need: 我怀疑您只需要:

var query = db.GroupDetail
              .OrderBy(...) // You really need an ordering
              .Skip(intSkip)
              .Take(mintPageSize);

You should work out what ordering you want, otherwise "the first N" doesn't have any meaning. 您应该计算出想要的顺序,否则“第一个N”没有任何意义。

That's not a translation of your query so much as your intent - you should check what SQL it generates. 那不是查询的翻译,而是您的意图 —您应该检查它生成的SQL。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM