Linq的使用

 
一、Linq中First和Single 的区别
First(): 找到符合条件的第一记录,就返回了,不管你后面还有多少数据
Single(): 先将记录都梳理一次,再找到符合自己要求的唯一记录(不能有多个,不然会出错的)。
二、Linq的使用方法
 public class FruitDA
    {
        private  DataClasses1DataContext Context; //Linq的对象
        public FruitDA()//构造函数
        {
           Context = new DataClasses1DataContext();
            //Context实例化  相对于把所有数据查出来
        }


         public List<Fruit> Select()//查询所有  
        {
            return Context.Fruit.ToList();//返回Fruit类的泛型集合
        }

        public List<Fruit> selectbyname(string name)//根据name模糊查询----Linq的模糊查询
        {
            return Context.Fruit.Where(r => r.Name.Contains(name)).ToList;//判断Name是否(Contains)包含name
        }
        public bool checkfruit(string user, string pwd)//验证用户名和密码 bool类--判断是否(true/false)
        {
            return Context.Fruit.Where(r => r.User == user && r.pwd == pwd).Count() > 0;
            //先判断是否有相同的数据,如果有数据的数量大于0,返回true;否则false
        }
        public Fruit select(string ids)//查询一条数据  
        {
            return Context.Fruit.Single(r => r.ids == ids);//根据主键查询一条数据---Single(单个);也可以用where
        }
     

        public void Insert(Fruit data)//添加
        {
            return Context.Fruit.InsertOnSubmit(data);
            Context.SubmitChanges();//改动后提交到数据库
        }
        public void Update(Fruit data)//修改
        { 
             //先查询,在修改
            Fruit sdata = Context.Fruit.Where(r => r.Ids ==data.Ids).First();//查询筛选第一条数据(First)
            if (sdata != null)//修改
            {
                sdata.Name = data.Name;
                sdata.Number = data.Number;
                //....
            }
            Context.SubmitChanges();//改动后提交到数据库
        }
        public void Delect(Fruit data)//删除
        {
            return Context.Fruit.DeleteOnSubmit(data);
            Context.SubmitChanges();//改动后提交到数据库
        }
   }
原文地址:https://www.cnblogs.com/huluobozu/p/5405000.html