Thursday, December 21, 2017

Linq Queries By Using Generics

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace linqwithgenerics
{
    class Program
    {
        class Employee
        {
            public int eno { get; set; }
            public string ename { get; set; }
            public int dno { get; set; }
            public string dname{ get; set; }
            public string decignation{ get; set; }
            public double salary { get; set; }
        }
        static void Main(string[] args)
        {
            List<Employee> emps = new List<Employee>
                                {
                                 new Employee() {   eno=101,ename="murali",dno=10,dname="IT",decignation="Prof",salary=100},
                                 new Employee() { eno=102,ename="krishna",dno=20,dname="cse",decignation="AssProf",salary=200},
                                 new Employee() { eno=103,ename="siva",dno=30,dname="ece",decignation="Lect",salary=300},
                                 new Employee() { eno=104,ename="nagu",dno=40,dname="eie",decignation="AssProf",salary=400},
                                 new Employee() { eno=105,ename="bhavani",dno=30,dname="eee",decignation="AssProf",salary=500},
                                 new Employee() { eno=106,ename="paidi",dno=10,dname="mtech",decignation="Prof",salary=600},
                                };

            Console.WriteLine("Write a query to display the employee details");
            Console.WriteLine("Eno"+"\t"+"Ename"+"\t"+"Dno"+"\t"+"Dname"+"\t"+"Deci"+"\t"+"Salary");
            var q = from x in emps
                    select x;
            foreach (var item in q)
            {
                Console.WriteLine(item.eno+"\t"+item.ename+"\t"+item.dno+"\t"+item.dname+"\t"+item.decignation+"\t"+item.salary);
            }
            Console.WriteLine("write a query who is working in  deptno = 10");
            var q2 = from x in emps
                     where x.dno==10
                     select x;
            foreach (var item in q2)
            {
                Console.WriteLine(item.eno + "\t" + item.ename + "\t" + item.dno + "\t" + item.dname + "\t" + item.decignation + "\t" + item.salary);
            }
            Console.WriteLine("write a query whose sal>200");
       
            var q3=from x in emps
                   where x.salary>200
                   select x;
            foreach (var item in q3)
            {
                Console.WriteLine(item.eno + "\t" + item.ename + "\t" + item.dno + "\t" + item.dname + "\t" + item.decignation + "\t" + item.salary);
            }
            Console.WriteLine("write a query who are workin in dept 10 and salary>200");
                        var q4 = from x in emps
                                 where x.dno==10 && x.salary>200
                                 select x;
            foreach (var item in q4)
            {
                Console.WriteLine(item.eno + "\t" + item.ename + "\t" + item.dno + "\t" + item.dname + "\t" + item.decignation + "\t" + item.salary);
            }
            Console.WriteLine("Write a query in ascendin order based onsalary");
            var q5 = from x in emps
                     orderby x.salary
                     select x;
            foreach (var item in q5)
            {
                Console.WriteLine(item.eno + "\t" + item.ename + "\t"+item.salary);
            }
            Console.WriteLine("Write a query in descendin order based onsalary");
            var q6 = from x in emps
                     orderby x.salary descending
                     select x;
            foreach (var item in q6)
            {
                Console.WriteLine(item.eno + "\t" + item.ename + "\t" + item.salary);
            }
            Console.WriteLine("Write a query who is working in dno in descending order");

            var q7 = from x in emps
                      where x.dno==10
                      orderby x.eno descending
                     select x;
            foreach (var item in q7)
            {
                Console.WriteLine(item.eno + "\t" + item.ename + "\t" + item.salary+"\t"+item.dno);
            }

            Console.WriteLine("write a query top thre salaries");
            var q8 = (from x in emps
                     orderby x.salary descending
                     select x).Take(4);
            foreach(var item in q8)
            {
                Console.WriteLine(item.eno + "\t" + item.ename + "\t" + item.salary + "\t" + item.dno);
            }

            Console.WriteLine("write a query top 3rd salaries");
            var q9 = (from x in emps
                      orderby x.salary descending
                      select x).Take(3).Skip(2);
            foreach (var item in q9)
            {
                Console.WriteLine(item.eno + "\t" + item.ename + "\t" + item.salary + "\t" + item.dno);
            }

            Console.WriteLine("write a query last thre salaries");
            var q10 = (from x in emps
                      orderby x.salary
                      select x).Take(4);
            foreach (var item in q10)
            {
                Console.WriteLine(item.eno + "\t" + item.ename + "\t" + item.salary + "\t" + item.dno);
            }

            Console.WriteLine("write a query last to 3rd salaries");
            var q11 = (from x in emps
                      orderby x.salary
                      select x).Take(3).Skip(2);
            foreach (var item in q11)
            {
                Console.WriteLine(item.eno + "\t" + item.ename + "\t" + item.salary + "\t" + item.dno);
            }


        }
    }
}

No comments: