zoukankan      html  css  js  c++  java
  • LINQ to Entities,基于方法查询,查询表达式语法

    初次学习LINQ to Entities,给出两种查询的示例代码。

    基于方法的查询:

    using (AdventureWorksEntities AWEntities = new AdventureWorksEntities())
    {
        ObjectSet<Contact> contacts = AWEntities.Contacts;
        ObjectSet<SalesOrderHeader> orders = AWEntities.SalesOrderHeaders;

        var query =
        contacts.SelectMany(
            contact => orders.Where(order =>
                (contact.ContactID == order.Contact.ContactID)
                    && order.OrderDate >= new DateTime(2002, 10, 1))
                .Select(order => new
                {
                    ContactID = contact.ContactID,
                    LastName = contact.LastName,
                    FirstName = contact.FirstName,
                    OrderID = order.SalesOrderID,
                    OrderDate = order.OrderDate
                }));

        foreach (var order in query)
        {
            Console.WriteLine("Contact ID: {0} Name: {1}, {2} Order ID: {3} Order date: {4:d} ",
                order.ContactID, order.LastName, order.FirstName,
                order.OrderID, order.OrderDate);
        }
    }

    查询表达式:

    using (AdventureWorksEntities AWEntities = new AdventureWorksEntities())
    {
        ObjectSet<Contact> contacts = AWEntities.Contacts;
        ObjectSet<SalesOrderHeader> orders = AWEntities.SalesOrderHeaders;

        var query =
            from contact in contacts
            from order in orders
            let total = order.TotalDue
            where contact.ContactID == order.Contact.ContactID
                && total >= 10000.0M
            select new
            {
                ContactID = contact.ContactID,
                LastName = contact.LastName,
                OrderID = order.SalesOrderID,
                total
            };

        foreach (var order in query)
        {
            Console.WriteLine("Contact ID: {0} Last name: {1} Order ID: {2} Total: {3}",
                order.ContactID, order.LastName, order.OrderID, order.total);
        }
    }

  • 相关阅读:
    大三学长带我学习JAVA.作业8。。1 有1、2、3、4这几个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
    详解Manifest
    反射机制和配置文件的用法
    大三学长带我学习JAVA.作业8。 判断101200之间有多少个素数,并输出所有素数。
    序曲
    java打包生成jar和exe全过程
    大三学长带我学习JAVA.作业6 编写日历表 和vim
    大三学长带我学习JAVA.作业7 利用for循环打印 9*9 表
    动态代理类
    pku 3522 Slim Span
  • 原文地址:https://www.cnblogs.com/jazzdan/p/2006354.html
Copyright © 2011-2022 走看看