• 菜鸟笔记Linq初学 top(2)


    今天学习了一下Linq中的Select用法,Select 从字面意思上就不难理解,查询,同sql中的查询一样,只不过sql中Select在前,Linq中select在后,

      Select操作可以细分为很多模试,来应对开发过程中不同的需求

    简单形式

    简单形式顾名思义就是非常简单的,普通的,好理解的写法   例如:获取表中单个的字段

      这段代码的意思一目了然,获取实体StudentLX中的StuName条件是StuID为10

    1 var names = from StudentLX in dt.studentLX
    2                    where StudentLX.StuID=10
    3                    select StudentLX.StuName;

    匿名类型

      匿名类型关键字:VAR

      匿名类型是C#3.0带来的新特性

      var 关键字他可以理解为类型占位符,他不是C#中的数据类型,他类似于JS中的弱数据类型,在编写程序的过程中var会自动匹配你 右边等式赋值,值得数据类型

      他可以匹配任何类型包括数组等类型等。

      

    //匹配右等式的数据类型为INT
    var it = 123456;
    //匹配右等式的数据类型为String
    var it ="Hello Whord";
    //注意如果VAR已经匹配,则不可改变匹配后的数据类型
    var it = 123456;
    it="hello";//这样会报错,因为IT已经匹配为int类型变量

    匿名类型必须初始化

     

    var it=(string)null //将变量IT初始化并将数据类型匹配为string类型
    var it= null //这句代码类似于上一局代码,但是只给变量指定了为值并未指定数据类型
    var IT={City="Hello"}

    编译器会创建一个包含  City 属性 的匿名类,我们可以通过Type来获取属性的名字

      创建一个包含Name,age 属性的匿名类

      

    var ss = from StudentLX in dt.StudentLX
                select new{
        
                            StuName=StudentLX.StuName,
                            StuAge = StudentLX.Age
                                }  

    需要注意的是,匿名类型不可定义为类成员变量,方法可以返回匿名类型。

    static object ST()
    {
         var studentget = new{name ="word",age=21};
          return studentget;     
    } 

    返回容易调用难,

      

    //匿名类型的调用
        static void Main(string[] args)
        {
           Object student = StudentGet();
            Console.WriteLine("Name:{0}\nAge:{1}"),
                      student.GetType().GetProPerty("Name").GetValue(student,null)
    student.GetType().GetProPerty("Age").GetValue(student,null)
        }        

    例子,用匿名类进行绑定

    private void Form1_Load(object sender, EventArgs e)
    {
          UpdateDate();
    }
     
    private void UpdateDate()
    {
           var student1 = new { Name = "Liu", Age = 14 };
           var student2 = new { Name = "Guan", Age = 12 };
           var student3 = new { Name = "Zhang", Age = 13 };
     
           var students = new List<object> { student1, student2, student3 };
                
           dataGridView1.DataSource = students;
    }
  • 相关阅读:
    详解MySQL中EXPLAIN解释命令(转)
    yii framework config 可以被配置的项目
    YII之yiic创建YII应用
    Yii 用户登录验证
    全选,反选,获取值ajax提交
    firefox常用插件
    file_get_contents failed to open stream: HTTP request failed(一个字符决定成败)
    linux svn服务器(一)
    js操作cookie(转载:经测试可用)
    淘宝用户api 如何获得App Key和API Secret
  • 原文地址:https://www.cnblogs.com/daimaozidejiamao/p/5508144.html
Copyright © 2020-2023  润新知