LINQ表达式树的示例分析-创新互联

小编给大家分享一下LINQ表达式树的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

创新互联专注于松北网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供松北营销型网站建设,松北网站制作、松北网页设计、松北网站官网定制、微信平台小程序开发服务,打造松北网络公司原创品牌,更为您提供松北网站排名全网营销落地服务。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Linq.Expressions;
namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {
            //重要的类**********************************
            //BinaryExpression :双重的,二元,由两个东西组成的表达式
            //ParameterExpression : 获取参数
            IQueryable a = Enumerable.Range(0, 1000).AsQueryable();
            Expression> expression = r => r < 20 && r == 2;
            //======查询表达式树(expression)的参数(只有一个参数)
            foreach (var item in expression.Parameters)
            {
                Console.WriteLine("参数:{0},节点类型:{1}", item, item.NodeType);//输出:参数:r,节点类型:Lambda
            }
            //======查询表达式树(expression)的主体部分
            //输出:主体部分:(r < 20 AndAlso r == 2),节点类型:Lambda
            Console.WriteLine("主体部分:{0},节点类型:{1}", expression.Body, expression.NodeType);
            //======查询表达式树(expression)左边的主体部分
            //输出:(r < 20)     要把类型强制转换成BinaryExpression类型
            Console.WriteLine(((BinaryExpression)expression.Body).Left);
            //======查询表达式树(expression)左边的主体部分左边的变量类型
            //Int32
            Console.WriteLine(((BinaryExpression)((BinaryExpression)expression.Body).Left).Left.Type.Name);

            Console.ReadKey();
        }
    }
}

以上是“LINQ表达式树的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网站名称:LINQ表达式树的示例分析-创新互联
当前网址:http://scyanting.com/article/dsdeci.html