首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

这样测试LINQ普通查询的效率对不对?解决办法

2012-04-02 
这样测试LINQ普通查询的效率对不对?C# codeusing Systemusing System.Collections.Genericusing System.

这样测试LINQ普通查询的效率对不对?

C# code
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Collections;using System.Diagnostics;namespace ConsoleApplication11{    class Program    {        static void Main(string[] args)        {            List<Test> list = new List<Test>();            Test t;            for (int i = 0; i < 10000000; i++)            {                t = new Test() { MyInt = i, MyString = i.ToString() };                list.Add(t);            }            Debug.WriteLine(DateTime.Now);            for (int i = 0; i < list.Count; i++)            {                if (list[i].MyString == "9999999")                {                    t = list[i];                    break;                }            }            Debug.WriteLine(DateTime.Now);            var item = from temp                       in list                       where temp.MyString == "9999999"                       select temp;            foreach (var it in item)            {            }            Debug.WriteLine(DateTime.Now);        }    }    public class Test    {        public int MyInt { get; set; }        public string MyString { get; set; }    }}

我就是想知道linq快还是直接for快

[解决办法]
你这个例子里毫无疑问是for快,Linq慢得不是一点半点,简直不是一个级别...但你要清楚一点,Linq不是以提升执行效率为目的的,相反它是以牺牲执行效率来提升开发效率和易用性的...

热点排行