zoukankan      html  css  js  c++  java
  • LINQ Introduction

    Microsoft is touting LINQ as a ‘‘groundbreaking innovation’’ that promises to ‘‘revolutionize the way
    developers work with data.’’ Like you, I was somewhat skeptical about these promises because similar
    comments have been funneled our way in the past, but these bold declarations would cause even the
    casual developer to stop and take notice.

    LINQ introducts queries(the concept of a query) as a first-class language construct in both C# and Visual
    Basic. No longer do you need to learn multiple technologies to query multiple data sources. It is a single
    query syntax for querying XML,SQL databases, ADO.NET DataSets, and other data sources.
    LINQ simplifies how you will now write queries. If you use C# or Visual Basic, you will be able to start
    writing LINQ queryies immediately because you know most of what you need. LINQ  is a set of features built
    into Visual Studio 2008 that incorporates tremendous query capabilities directly into the language syntax of
    Visual Basic and C#. This provides the benefits of IntelliSense, compile-time type checking, and debugging
    support. How could life get any better?

    LINQ to XML exposes two classes that help HLINQ integrate with XML:

    XElement and XAttribute.

    XElement class represents an XML element and is used in LINQ to XML to create XML element nodes or
    even to filter out the data you really care about.
    XAttribute class is a name/value pair associated with an XML element. Each XElement contains a list
    of attributes for that element, and the XAttribute class represents an XML attribute.

            static void Main(string[] args)
            {
    
                var xml = new XElement("Objects",
                        new XElement("Obj", "吴xx",new XAttribute("id","1"),new XAttribute("name","wcg") ),
                        new XElement("Obj", "啊xx")
                    );
                Console.WriteLine( xml.ToString() );
                string[] firstnames = { "Scott", "Steve", "Ken", "Joe", "John",
                                          "Alex", "Chuck", "Sarah" };
                var r = new XElement( "Friends",
                            from fn in firstnames
                            where fn.StartsWith("S")
                            select new XElement("Name", fn) );
    
                Console.WriteLine( r.ToString() );
                
                //DirectoryInfo disc=new DirectoryInfo("E:\\");
                //var directories = from dir in disc.GetDirectories()
                //              orderby dir.Name descending
                //              select new { dir.Name };
    
                //foreach (var item in directories)
                //{
                //    Console.WriteLine(item.Name);
                //}
                //-----------------------------------------------------
                //var procs = from proc in Process.GetProcesses()
                //            orderby proc.WorkingSet64 descending
                //            select new { proc.Id, proc.ProcessName, proc.WorkingSet64 };
                //foreach (var item in procs)
                //{
                //    Console.WriteLine("PID={0},PName={1},PMemoryAmount={2}",item.Id,item.ProcessName,item.WorkingSet64);
                //}
                //-----------------------------------------------------
    
    
                Console.ReadKey();
            }
    
  • 相关阅读:
    FreeCAD框架解析
    Python源码的编译与加密
    centos 8及以上安装mysql 8.0
    浮点数运算丢失精度
    使用 Nginx 代理内网 GitLab 并确保 SSH / HTTP 克隆地址正确
    如何实现一个简易版的 Spring
    Spring 是如何造出一个 Bean 的
    从CPU缓存看缓存的套路
    Java 集合类 List 的那些坑
    react 项目中使用antd框架,对导航多层渲染
  • 原文地址:https://www.cnblogs.com/wucg/p/1845193.html
Copyright © 2011-2022 走看看