十、 LinQ
1. LinQ
string[] names = new string[] {
"n1", "n2", "n3", "n4", "n5", "n6"};
int[] ages = new int[] {
10, 20, 30, 40, 50, 60};
// 投影
var results1_1 = from n in names select n;
var results1_2 = names.Select(n => n);
// 匿名
var results2 = from n in names select new {Upper = n.ToUpper(), Length = n.Length};
// 篩選
var results3 = from n in names where n.EndsWith("3") select n;
var results4 = names.Where(n => n.EndsWith("3"));
// 排序
var results5 = from n in names orderby n descending select n;
var results6 = names.OrderByDescending(n => n);
// 鏈接
var results7 = from n in names
from a in ages
where int.Parse(n[1].ToString()) == a / 10
2. LinQ to DataSet
DataTable table = new DataTable();
table.Columns.Add("name");
table.Columns.Add("age");
table.Rows.Add(new object[] {"Jack", 20});
table.Rows.Add(new object[] {"Ang", 22 });
var results = from u in table.AsEnumerable() select u;
Console.WriteLine(results.FirstOrDefault()["name"]);
3. LinQ to Entities
using (UserEntities context = new UserEntities())
{
var results = from u in context.tb_User select u;
Console.WriteLine(results.FirstOrDefault().Username);
}