Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 18803|Respuesta: 0

[ASP.NET] Ejemplo de consulta de integración de asp.net_linq lenguajes

[Copiar enlace]
Publicado en 7/5/2015 10:40:57 | | |
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.UI;
  6. using System.Web.UI.WebControls;

  7. namespace Linq
  8. {
  9.     /*
  10.      LINQ的写法:
  11.     from 临时变量 in 实现IEnumerable<T>接口的对象(集合)
  12.     where条件表达式
  13.     [orderby条件]
  14.     [group by 条件]
  15.     select 临时变量中被查询的值
  16.      */
  17.     public partial class WebForm1 : System.Web.UI.Page
  18.     {
  19.         protected void Page_Load(object sender, EventArgs e)
  20.         {


  21.             if (!IsPostBack)
  22.             {
  23.                 string[] arr = { "sfssdfsdfdf", "234234", "sdfssdfdfdf", "dsgsdf234dfg", "234sdf", "45gdfg34fgdfg" };

  24.                
  25.                 //var:匿名变量
  26.                 var strArr =
  27.                     //linq语句:从数组里查询所有元素放到strarr集合里
  28.                     from str in arr
  29.                     where str.Length > 10
  30.                     orderby str descending
  31.                     select str;

  32.                 //IEnumerable<T>接口的对象strArr,是可以用foreach遍历的
  33.                 foreach (string str in strArr)
  34.                 {
  35.                     //Response.Write(str+"<br>");
  36.                     
  37.                 }

  38.                 //添加5个用户对象到集合里
  39.                 List<UserInfo> users = new List<UserInfo>();
  40.                 UserInfo user1 = new UserInfo(1, "张三", "男", 19, "34534656");
  41.                 UserInfo user2 = new UserInfo(2, "放到", "男", 22, "34534656");
  42.                 UserInfo user3 = new UserInfo(3, "的", "女", 39, "34534656");
  43.                 UserInfo user4 = new UserInfo(4, "更好", "女", 18, "34534656");
  44.                 UserInfo user5 = new UserInfo(5, "u影", "男", 29, "34534656");
  45.                 users.Add(user1);
  46.                 users.Add(user2);
  47.                 users.Add(user3);
  48.                 users.Add(user4);
  49.                 users.Add(user5);

  50.                 //linq子句:
  51.                 //from select where group orderby join let into
  52.                 var uArr = from u in users where u.UserSex == "女" orderby u.UserAge select u;

  53.                 foreach (var user in uArr)
  54.                 {
  55.                     //Response.Write("id:"+user.UserID+",名字:"+user.UserName+",性别:"+user.UserSex+",年龄:"+user.UserAge+
  56.                     //    ",电话:"+user.UserTel+ "<br>");

  57.                 }

  58.                 //group     by
  59.                 var uArr2 = from u in users group u by u.UserSex;

  60.                 for (int i = 0; i < uArr2.Count(); i++)
  61.                 {
  62.                     foreach (var user in uArr2.ElementAt(i))
  63.                     {
  64.                         //Response.Write("id:" + user.UserID + ",名字:" + user.UserName + ",性别:" + user.UserSex + ",年龄:" + user.UserAge +
  65.                         //    ",电话:" + user.UserTel + "<br>");

  66.                     }
  67.                 }

  68.                 //
  69.                 List<ScoreInfo> scores = new List<ScoreInfo>();
  70.                 ScoreInfo s1 = new ScoreInfo(1, 1, 45);
  71.                 ScoreInfo s2 = new ScoreInfo(2, 2, 92);
  72.                 ScoreInfo s3 = new ScoreInfo(3, 4, 89);
  73.                 ScoreInfo s4 = new ScoreInfo(4, 5, 97);
  74.                 scores.Add(s1);
  75.                 scores.Add(s2);
  76.                 scores.Add(s3);
  77.                 scores.Add(s4);

  78.                 var uArr3 = from u in users
  79.                             join s in scores on u.UserID equals s.UserID
  80.                             select new { u.UserName,u.UserSex,u.UserAge,u.UserTel, s.Score };

  81.                 foreach (var user in uArr3)
  82.                 {
  83.                     Response.Write("名字:" + user.UserName + ",性别:" + user.UserSex + ",年龄:" + user.UserAge +
  84.                         ",电话:" + user.UserTel + ",成绩:"+user.Score+ "<br>");
  85.                 }

  86.                 //let
  87.                 //var uArr4 = from s in scores where s.Score >= 90 select s.UserID into id


  88.                 //into
  89.             }
  90.         }
  91.     }
  92. }
Copiar código
Linq.rar (152.72 KB, Número de descargas: 0)




Anterior:[DBHelper] Código Optimizado Definitivo
Próximo:Arquitectura de tres niveles de ASP.NET (DAL, BLL, UI)
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com