用LINQ方法增删改查

  //Func<string, string> fc = delegate(string a)
            //{
            //    a += "你好";
            //    return a;
            //};
            //MessageBox.Show(fc("5").ToString());
            DataClasses1DataContext context = new DataClasses1DataContext();
            //List<bread> list = context.bread.Where(r => Convert.ToDecimal(r.breadprice.ToString()) < 15).ToList();
            var list2 = from quary in context.bread where Convert.ToDecimal(quary.breadprice.ToString()) < 15 select quary;
            dataGridView1.AutoGenerateColumns = true;
            dataGridView1.DataSource = list2;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

public class studentDA

    {
        private DataClasses1DataContext _context;
        public studentDA()
        {
            _context = new DataClasses1DataContext();
        }
        //添加数据
        public void insert(Student data)
        {
            _context.Student.InsertOnSubmit(data);
            _context.SubmitChanges();
        }
        //修改数据
        public void update(Student  data)
        {
            Student sdata =_context.Student.Single(r => r.Sno == data.Sno);
            if (sdata != null)
            {
                sdata.Sno = data.Sno;
                sdata.Sname = data.Sname;
                sdata.Ssex = data.Ssex;
                sdata.Sbirthday = data.Sbirthday;
                _context.SubmitChanges();
            }

        }
        //删除数据
        public void delete(Student data)
        {
            Student sdata = _context.Student.Single(r=>r.Sno==data.Sno);
            _context.Student.DeleteOnSubmit(sdata);
            _context.SubmitChanges();
        }
         ////////根据学生编号删除
        public void delete(string sno)
        {
            Student data = _context.Student.Single(r => r.Sno == sno);
            if (data != null)
            {
                _context.Student.DeleteOnSubmit(data);
                _context.SubmitChanges();
            }
        }
       ///////////查询所有学生数据
        public List<Student> select()
        {
            return _context.Student.ToList().Count>0? _context.Student.ToList():null;
        }
///////////////根据学生编号查询
        public Student select(string sno)
        {
            return _context.Student.Where(r => r.Sno == sno).First();
        }
/////////////根据学生姓名查询
        public List<Student> selectbyname(string sname)
        {
           List <Student> list=   _context.Student.Where(r => r.Sname.Contains(sname)).ToList();
           return list.Count>0? list:null;
        }
    }
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
往数据库中添加数据
 Student data = new Student
            {
               Sno=textBox1.Text,
               Sname=textBox2.Text,
               Ssex=radioButton1.Checked?"男":"女",
               Sbirthday=dateTimePicker1.Value,
               Class=textBox3.Text,

            };
            new studentDA().insert(data);

/////////////用linq的方法从数据库中查询数据
 private void Form3_Load(object sender, EventArgs e)
        {
            List<Student> list = new studentDA().select();
            if (list != null)
            {
                dataGridView1.AutoGenerateColumns = true;
                dataGridView1.DataSource = list;
            }
        }

//////////用linq的方法从数据库中根据姓名查询
        private void button1_Click(object sender, EventArgs e)
        {
            List<Student> list = new studentDA().selectbyname(textBox1.Text);
            if (list != null)
            {
                dataGridView1.AutoGenerateColumns = true;
                dataGridView1.DataSource = list;
            }
        }

/////////用linq的方法从数据库中删除数据
        private void button2_Click(object sender, EventArgs e)
        {
            if (dataGridView1.SelectedRows.Count > 0)
            {
                Student data = (Student)dataGridView1.SelectedRows[0].DataBoundItem;
                new studentDA().delete(data);
            }
            dataGridView1.AutoGenerateColumns = true;
            dataGridView1.DataSource = new studentDA().select();
        }

        private void button3_Click(object sender, EventArgs e)
        {
            if (dataGridView1.SelectedRows.Count > 0)
            {
                Form4 f = new Form4((Student)dataGridView1.SelectedRows[0].DataBoundItem);
                f.Show();
            }
        }

 private Student sdata;////将选择的信息传到相应的地方构造函数
        public Form4(Student data)
        {
            InitializeComponent();
            sdata = data;

        }

        private void Form4_Load(object sender, EventArgs e)
        {
            textBox1.Text = sdata.Sno;
            textBox2.Text = sdata.Sname;
            textBox3.Text = sdata.Class;
            if (sdata.Ssex == "男")
            {
                radioButton1.Checked = true;
            }
            else
            {
                radioButton2.Checked = true;
            }
            dateTimePicker1.Value = DateTime.Parse(sdata.Sbirthday.ToString());
        }
/////////////////////////////////////////////////////////////////

///////将传回的信息修改后传回数据库
        private void button1_Click(object sender, EventArgs e)
        {
            Student sdata = new Student();
            sdata.Sno = textBox1.Text;
            sdata.Sname = textBox2.Text;
            sdata.Class = textBox3.Text;
            sdata.Ssex = radioButton1.Checked ? "男" : "女";
            sdata.Sbirthday = dateTimePicker1.Value;
            new studentDA().update(sdata);
            this.Close();
        }
时间: 2024-10-08 05:58:27

用LINQ方法增删改查的相关文章

序列类型的方法 增删改查

# 序列类型的方法 # 增删改查 # 列表的方法# 增# 列表添加元素 可以添加任何元素# append 在元素最后位置添加# li = [1,2,3,4]# li.append(5) # 在该列表中最后当成一个整体添加元素,不需要赋值,因为他是可变类型(如赋值:li2 = li.append(5)则打印出来是None空)# li.append('aasasas') # 可添加字符串# li.append([5,6,7]) # 可添加列表# print(li) # insert 指定位置添加#

LINQ之增删改查

前言: LINQ,语言集成查询(LanguageIntegrated Query)是一组用于c#和Visual Basic语言的扩展.它允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据. 从技术角度而言,LINQ定义了大约40个查询操作符,如select.from.in.where以及order by(C#中).使用这些操作符可以编写查询语句.不过,这些查询还可以基于很多类型的数据,每个数据类型都需要一个单独的LINQ类型. 开始学习LinQ总是抱着一种感觉自己很虚

LinQ的增删改查

LINQ,语言集成查询(Language Integrated Query)是一组用于c#和Visual Basic语言的扩展.它允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据. 高集成化的数据访问类,它会自动映射数据库结构,将表名完整映射成为类名,将列名完整映射成字段名. 1.LinQ创建 Linq文件是dbml结尾,一个数据库对应一个Linq文件主外键 (1)首先表格要有主外键关系 (2)添加新项 LinQ to SQL类 ,起名为数据库名字 (3)服务器资源

Linq基础增删改查

使用Linq时要注意一下问题:1.创建Linq连接后生成的dbml文件不要变动,生成的表不要碰,拖动表也会造成数据库连接发生变动,需要重新保存.2.属性拓展的使用:添加一个新的类,不要在dbml中添加属性拓展,一旦数据库变动,属性拓展类就会失效.3.使用Linq获取的数据都是?int,?string等?数据类型,意思是也有可能为空,这时候操作数据需要先把数据类型转化成int,string等数据类型. 在这里操作数据库用到了lambda表达式,是一种匿名函数,使用lambda表达式自动带有防攻击,

linQ!!增删改查 好用!

linq:增删改查 数据库访问技术: ADO.net EF框架 LinQ LinQ是一种高集成化的数据库访问技术,他将数据库中的表映射成程序中的类 数据库的表名变成类名 数据库的列名变成字段名/属性名 所有的操作都是通过LinQ自动生成的一个上下文对象来进行操作的,这个对象名是LinQ的名字+"DataContext" ,一个数据库对应一个LinQ 1.创建LinQ 在项目上右键,添加一个LinQ to SQL 然后点击服务器资源管理器,选择小插头样式的连接到数据库 正确填写需要连接的

linq的创建 和 数据的增删改查

1.linq创建之前,一定要在sql做好数据表的主外键关系. 2.linq文件是以.dbml结尾,一般一个数据库的名字就是一个linq的名字 3,以实例来演示增删改查 数据库的名字为linq,里面有两个表Users(UserName,Password,Sex,NickName,Birthday,Nation)和Nation(NationCode,NationName) (1)创建名为linq的linq. 创建完之后啥也不用改,如果需要在重新封装类和数据扩展,那就想以前重新建立Users和User

Thinkphp---练习:数据的增删改查

利用ThinkPHP连接数据库的增删改查的例题:用到的数据库表名Info表,Nation表 数据显示页面:MainController.class.php中的方法(增删改查全包括--function  ShowInfo,ShanChu,TianJia,XiuGai) 1 <?php 2 namespace Home\Controller; 3 use Think\Controller; 4 class MainController extends Controller 5 { 6 7 //例题:

LinQ 创建连接、简单增删改查

LINQ--语言集成查询(Language Integrated Query)是一组用于c#和Visual Basic语言的扩展.它允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据. 创建连接: 添加新项→LinQ to sql类→重命名为需要用的数据库名→服务器资源管理器→连接到数据库→填写服务器名.用户名密码.连接到数据库的名称→从数据连接中要到要引用的表拖进 数据库名.dbml 中 增删改查表达式 查询: 新建类:数据访问类,添加方法: Data0617Dat

Linq to sql 增删改查(转帖)

代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Syst