|
任何支援.NET Framework 2.0的程式語言都能夠叫用LINQ所提供的查詢函式,也就是說能使用C# 2.0來呼叫LINQ Framework
|
|
static void DemoLinq()
{
string[] list = new string[] { "code6421", "tom", "david", "cathy" };
IEnumerable<string> result = Enumerable.Where<string>(list,
delegate(string item)
{
return item == "tom";
});
Console.WriteLine(Enumerable.FirstOrDefault(result));
}
|
|
using System.Data.SqlClient;
........
static IEnumerable<JoinData> JoinTables()
{
using (SqlConnection conn = new SqlConnection(
"Data Source=JEFFRAY;Initial Catalog=Northwind;Integrated Security=True"))
{
SqlDataAdapter adapter1 = new SqlDataAdapter("SELECT * FROM Customers", conn);
SqlDataAdapter adapter2 = new SqlDataAdapter("SELECT * FROM Orders", conn);
DataTable dt1 = new DataTable("Customers");
DataTable dt2 = new DataTable("Orders");
adapter1.Fill(dt1);
adapter2.Fill(dt2);
return Enumerable.Join<DataRow,DataRow,string,JoinData>(
DataTableExtensions.AsEnumerable(dt2),
DataTableExtensions.AsEnumerable(dt1),
delegate(DataRow s1)
{
return s1.IsNull("CustomerID") ?
null : (string)s1["CustomerID"];
},
delegate(DataRow s2)
{
return s2.IsNull("CustomerID") ? null :
(string)s2["CustomerID"];
},
delegate(DataRow s1,DataRow s2)
{
JoinData result = new JoinData();
result.OrderID = s1.IsNull("OrderID") ? -1 :
(int)s1["OrderID"];
result.CompanyName = s2.IsNull("CompanyName") ?
string.Empty : (string)s2["CompanyName"];
return result;
});
}
}
.........
public class JoinData
{
private int _orderID;
private string _companyName;
public int OrderID
{
get
{
return _orderID;
}
set
{
_orderID = value;
}
}
public string CompanyName
{
get
{
return _companyName;
}
set
{
_companyName = value;
}
}
}
|
|
10779,Morgenstern Gesundkost
10780,LILA-Supermercado
10781,Wartian Herkku
10782,Cactus Comidas para llevar
10783,Hanari Carnes
10784,Magazzini Alimentari Riuniti
10785,GROSELLA-Restaurante
10786,Queen Cozinha
10787,La maison d'Asie
10788,QUICK-Stop
10789,Folies gourmandes
10790,Gourmet Lanchonetes
10791,Frankenversand
10792,Wolski Zajazd
10793,Around the Horn
10794,Que Delicia
10795,Ernst Handel
10796,HILARION-Abastos
10797,Drachenblut Delikatessen
10798,Island Trading
10799,Koniglich Essen
10800,Seven Seas Imports
..........................................
|
1048



被折叠的 条评论
为什么被折叠?



