void dataBindByWhere()
        {

/**************select/distinct 练习*******************/
            //获取数据库中的T_Student表数据
            var list = from s in ctx.T_Student
                       select s;
            //采用匿名类型
            var list1 = from s in ctx.T_Student
                        select new
                        {
                            stuNumber = s.stuNumber,
                            stuSex = s.stuSex,
                            //这里边是可以计算的
                            stuAge = s.stuAge / 2 + s.stuAge / 2,
                            //也可以进行条件判断
                            stuAgeTime = s.stuAge>20?"成年":"年轻",
                            stuName = s.stuName
                        };
            //也可以不用匿名类型获取个别字段值
            var list2 = from s in ctx.T_Student
                        select s.stuName;
            //也可以转化为自定义的类型,比如这里的peple为自定义的类型
            var list3 = from s in ctx.T_Student
                        select new People
                            {
                                stuNumber = s.stuNumber,
                                stuName = s.stuName
                            };
            //可以在select 匿名类型里边继续包括匿名类型
            var list4 = from s in ctx.T_Student
                        select new
                        {

stuNumber = s.stuNumber,
                            stuName = s.stuName,
                            stuInfo = new T_Student { stuAge = s.stuAge, stuSex = s.stuSex }
                        };
            //也可以继续在select 里边包括select
            var list5 = from s in ctx.T_Student
                        select new {
                            stuNumber = s.stuNumber,
                            stuSCore = from c in s.T_Score
                                       where s.stuNumber==c.stuNumber
                                       select c.score
                        };
            //也可以在select 里边调用方法
            var list6 = from s in ctx.T_Student
                        select new {
                            stuNumber = s.stuNumber,
                            stuName = s.stuName,
                            stuAge = AgeInfo(s.stuAge)
                        };
            //也可以对查询结果去除重复
            var list7 = (from s in ctx.T_Student
                         select s.stuName).Distinct();
            GridView1.DataSource = list;
            GridView1.DataBind();
        }
        string AgeInfo(int age)
        {
            return age > 20 ? "成年" : "年轻";
        }

Linq无聊练习系列2--select/distinct练习的更多相关文章

  1. JS中Float类型加减乘除 修复 JQ 操作 radio、checkbox 、select LINQ to SQL:Where、Select/Distinct LINQ to SQL Count/Sum/Min/Max/Avg Join

    JS中Float类型加减乘除 修复   MXS&Vincene  ─╄OvЁ  &0000027─╄OvЁ  MXS&Vincene MXS&Vincene  ─╄Ov ...

  2. LINQ to SQL语句之Select/Distinct和Count/Sum/Min/Max/Avg (转)

    Select/Distinct操作符 适用场景:o(∩_∩)o… 查询呗. 说明:和SQL命令中的select作用相似但位置不同,查询表达式中的select及所接子句是放在表达式最后并把子句中的变量也 ...

  3. LINQ to SQL:Where、Select/Distinct

    Where 操作 适用场景:实现过滤,查询等功能. 简单说明:与 SQL 命令中的 Where 作用相似,都是起到范围限定也就是过滤作用的 ,而判断条件就是它后面所接的子句. Where 操作包括 3 ...

  4. Linq无聊练习系列6--Any/All/Contains/Concat/Union/Intersect/Except/take/skip/SqlMethods操作练习

    /*********************Any/All/Contains/Concat/Union/Intersect/Except/take/skip/SqlMethods操作练习******* ...

  5. Linq无聊练习系列8---开放式并发事务,null和 DateTime,string操作练习

    /*********************开放式并发事务,null和 DateTime,string操作练习**********************************/ //所谓并发,就是 ...

  6. Linq无聊练习系列1--where练习

    linq主要有3种,linq to sql,linq to XML,Linq to Object linq to sql. 这里没有通过相应的类,生成相应的数据库中的表.没有用流行的编码优先. 只是为 ...

  7. Linq无聊练习系列7----Insert,delete,update,attach操作练习

    /*********************Insert,delete,update,attach操作练习**********************************/            ...

  8. Linq无聊练习系列5--OrderBy ,Groupby练习

    /**************OrderBy ,Groupby练习*******************/                       //按学生的总分数按降序排列排序         ...

  9. Linq无聊练习系列4--join练习

    /**************join 练习*******************/            //对于1对多关系            var list =from c in ctx.T ...

随机推荐

  1. Linux下的变化的主机名步骤

    Linux下变化的主机名gpdb 步骤1.执行vi /etc/sysconfig/network命令 NETWORKING=yesHOSTNAME=gpdb 第二步.执行hostname gpdb令 ...

  2. MD5算法的原理与实现

    ***********************************************声明************************************************ 原创 ...

  3. Oracle安装及使用入门

    新手Oracle安装及使用入门   一.安装Oracle Step1 下载oracle压缩包并解压到同一文件夹下面 Step2 双击setup.exe进行安装 Step3:进入如下界面配置: 邮箱可不 ...

  4. java流下载

    @RequestMapping("/pluginDownload") public void pluginDownload(HttpServletResponse response ...

  5. HDU 3415 Max Sum of Max-K-sub-sequence 最长K子段和

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=3415 意甲冠军:环.要找出当中9长度小于等于K的和最大的子段. 思路:不能採用最暴力的枚举.题目的数据量是 ...

  6. Chapter 2 User Authentication, Authorization, and Security(3):保server避免暴力袭击

    原版的:http://blog.csdn.net/dba_huangzj/article/details/38756693,专题文件夹:http://blog.csdn.net/dba_huangzj ...

  7. C#操作Xml:XSLT语法 在.net中使用XSLT转换xml文档示例

    XSL即可扩展的样式表文件. 可以格式化xml的显示,也可以将xml转换成需要的另一种格式. 学习XSL必须熟悉XPath.XSL和XPath一样简单强大,容易学习. 1. XSL既然可以格式化xml ...

  8. iOS开发- "duplicate symbol for architecture i386" 解决的方法

    今天整合项目的时候, 遇到了这样一个问题. duplicate symbol _flag in: /Users/apple/Library/Developer/Xcode/DerivedData/bl ...

  9. cocos2dx 3.0正式版 于mac在新建项目

    下载cocos2dx 3.0正式版,和安装python2.7.*版本号. 加入cocos命令: mac下: 在cocos2d-x\tools\cocos2d-console\bin文件夹下.执行ins ...

  10. Python学习笔记16:标准库多线程(threading包裹)

    Python主要是通过标准库threading包来实现多线程. 今天,互联网时代,所有的server您将收到大量请求. server要利用多线程的方式的优势来处理这些请求,为了改善网络port读写效率 ...