代码改变世界

LinQ的简单使用

2016-10-16 22:15  天疯狂石  阅读(242)  评论(0编辑  收藏  举报

1.LinQ to Sql类(NET Language Integrated Query (LINQ) )

LINQ定义了大约40个查询操作符,如select、from、in、where以及order by(C#中)。使用这些操作符可以编写查询语句。不过,这些查询还可以基于很多类型的数据,每个数据类型都需要一个单独的LINQ类型。
是一个集成化的数据访问类,微软将原本需要我们自己动手去编写的一些代码,集成到了这个类中,会自动生成。

用来数据库数据访问

2.和ADO.NET有什么区别?

没什么区别

就是代码量减少

3.linQ的创建 

添加项——添加新项(LinQ to Sql类):每个数据库对应一个LinQ to Sql类

 

服务器资源管理器——连接到数据库(服务器名称,用户名,密码,数据库名称)——将需要的表拖入窗体

查询

  Data0617DataContext con = new Data0617DataContext();
    public List<Users> Select()
    {
        return con.Users.ToList();
    }

条件查询:使用Lamdba表达式

//条件查询 
public List<Users> Select(string uname)
    {
        //Lamdba表达式
        return con.Users.Where(r => r.UserName == uname && r.PassWord == "1234").ToList();

    }

字段扩展:新建类:+ partial   

public partial class Users
{

    public string SexStr { get { return Convert.ToBoolean(_Sex) ? "男" : "女"; } }
    public string BirStr { get { return Convert.ToDateTime(this._Birthday).ToString("yyyy年MM月dd日"); } }

    public string NationName { get { return new NationData().SelectNationName(_Nation); } }

    public string Nname { get { return Nation1.NationName; } }
}

添加/删除/修改 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// <summary>
/// UsersData 的摘要说明
/// </summary>
public class UsersData
{
    Data0617DataContext con = new Data0617DataContext();

    public void Insert(Users u)
    {
        con.Users.InsertOnSubmit(u);
        con.SubmitChanges();
    }

    public void Delete(string Uname)
    {
        Users uu = con.Users.Where(r => r.UserName == Uname).FirstOrDefault();
        if (uu != null)
        {
            con.Users.DeleteOnSubmit(uu);
            con.SubmitChanges();
        }
    }

    public Users Select(string uname)
    {
        return con.Users.Where(r => r.UserName == uname).FirstOrDefault();
    }

    public void Update(Users u)
    {
        Users uuu = con.Users.Where(r => r.UserName == u.UserName).FirstOrDefault();
        uuu.PassWord = u.PassWord;
        uuu.NickName = u.NickName;
        uuu.Sex = u.Sex;
        uuu.Birthday = u.Birthday;
        uuu.Nation = u.Nation;
        con.SubmitChanges();
    }


}