LINQ to DataSet

       

  DataSet ds = getDataset();

    //第一种方法
        //var matches = from p in ds.Tables["products"].AsEnumerable()
        //              where p.Field<decimal>("UnitPrice") > 10
        //              select p;
        //gvProducts.DataSource = matches.AsDataView();


        //第二种方法
        var matches = from p in ds.Tables["products"].AsEnumerable()
                      where p.Field<decimal>("UnitPrice") > 10
                      select new { pid = p.Field<int>("ProductId"), pname = p.Field<string>("ProductName"), price = p.Field<decimal>("UnitPrice") };
        //当在LINQ表达式中使用"投影"后,则可不调用AsDataView()方法。
        gvProducts.DataSource = matches;
        gvProducts.DataBind();

====================LINQ to DataSet 处理空值问题=====================

 DataSet1 ds = new DataSet1();
        DataSet1TableAdapters.EmployeesTableAdapter empsda = new DataSet1TableAdapters.EmployeesTableAdapter();
        empsda.Fill(ds.Employees);
        var matches = from emp in ds.Employees
                      where emp.Field<int?>("reportsto") != null && emp.Field<string>("Region") != null
                      select emp;
        gvProducts.DataSource = matches;
        gvProducts.DataBind();

原文地址:https://www.cnblogs.com/zxhoo/p/1884719.html