码迷,mamicode.com
首页 > 其他好文 > 详细

Mego开发文档 - 基础查询

时间:2018-04-09 00:07:55      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:投影   linq   github   def   常用   array   code   使用   实体   

基础查询

Mego 使用语言集成查询(LINQ)从数据库查询数据。LINQ允许您使用C#(或其他.NET语言)根据派生的上下文和实体类编写强类型查询。将LINQ查询的表示传递给数据库提供者,翻译为数据库特定的查询语言(例如关系数据库的SQL)。

文档代码示例的模型都是基于测试用例所用的模型

加载所有数据

using (var db = new OrderManageEntitie())
{
    var list = db.Products.ToList();
}

加载单个数据

比较常用的方法,可以支持First()Single()ElementAt()

using (var db = new OrderManageEntit())
{
    var data = db.Products.FirstOrDefault();
}
using (var db = new OrderManageEntit())
{
    var data = db.Products.ElementAt(4);
}

汇总查询

using (var db = new OrderManageEntit())
{
    var data = db.Products.Count();
}

查询过滤

using (var db = new OrderManageEnti())
{
    var data = db.Products.Where(a => a.Name.Contains("P")).ToArray();
}

查询投影

using (var db = new OrderManageEntiti())
{
    var query = from a in db.Products
                select new
                {
                    a.Id,
                    a.Name
                };
    var data = query.ToList();
}

查询分页

using (var db = new OrderManageEntities())
{
    var data = db.Products.Take(10).Skip(20);
}

内连接查询

using (var db = new OrderManageEntities())
{
    var query = from a in db.Products
                join b in db.Customers on a.Id equals b.Id
                select new { a, b };
    var data = query.ToList();
}

左连接查询

using (var db = new OrderManageEntities())
{
    var query = from a in db.Products
                join b in db.Customers on a.Id equals b.Id into g
                from b in g.DefaultIfEmpty()
                select new { a, b };
    var data = query.ToList();
}

多查询连接

using (var db = new OrderManageEntities())
{
    var query = (from a in db.Customers
                 select new
                 {
                     a.Id,
                     a.Code,
                     a.Name
                 })
                .Concat
                (from b in db.Products
                 select new
                 {
                     b.Id,
                     b.Code,
                     b.Name
                 });
    var data = query.ToArray();
}

Mego开发文档 - 基础查询

标签:投影   linq   github   def   常用   array   code   使用   实体   

原文地址:https://www.cnblogs.com/CarefreeXT/p/8747747.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!