首先我先说一下,如果真的要用linq做项目的话,也会是比较方便的。已经尝试了在三层架构中应用linq to sql 比较方便。 

 //有三个不同的数据库表,所以写法不一样
  
  public class LinqTosql 
   { 
   public static GameCardSaleDataContext data = new GameCardSaleDataContext(); 
   
   
   //输出新闻表所有标题 
   public void output() 
   { 
   foreach (var item in data.News) 
   { 
   Console.WriteLine(item.Title); 
   } 
   } 
   
   //根据ID查询一条数据 
   public void selectbyId(int id) 
   { 
   IEnumerable query = from m in data.News 
   where m.NewsId == id 
   select m; 
   foreach (News item in query) 
   { 
   Console.WriteLine(item.Content); 
   } 
   } 
   //插入一条数据 返回主键自增列ID 
   public int Insert(News news) 
   { 
   data.News.InsertOnSubmit(news); 
   data.SubmitChanges(); 
   return news.NewsId; 
   } 
   //修改 
   public void Upade() 
   { 
   News news= data.News.Single(m => m.NewsId == 1); 
   news.Title = "你的标题被我修改了!"; 
   data.SubmitChanges();//提交到数据库 
   } 
   //删除 
   public void delete() 
   { 
   News news = data.News.Single(m => m.NewsId == 1); 
   data.News.DeleteOnSubmit(news); 
   data.SubmitChanges(); 
   
   } 
   
   } 
   public class LinqTosql
   {
   public static GameCardSaleDataContext data = new GameCardSaleDataContext();
  
  
   //输出新闻表所有标题
   public void output()
   {
   foreach (var item in data.News)
   {
   Console.WriteLine(item.Title);
   }
   }
  
   //根据ID查询一条数据
   public void selectbyId(int id)
   {
   IEnumerable query = from m in data.News
   where m.NewsId == id
   select m;
   foreach (News item in query)
   {
   Console.WriteLine(item.Content);
   }
   }
   //插入一条数据 返回主键自增列ID
   public int Insert(News news)
   {
   data.News.InsertOnSubmit(news);
   data.SubmitChanges();
   return news.NewsId;
   }
   //修改
   public void Upade()
   {
   News news= data.News.Single(m => m.NewsId == 1);
   news.Title = "你的标题被我修改了!";
   data.SubmitChanges();//提交到数据库
   }
   //删除
   public void delete()
   {
   News news = data.News.Single(m => m.NewsId == 1);
   data.News.DeleteOnSubmit(news);
   data.SubmitChanges();
   
   }
   
   } 
  
  //上文来自CSDN博客:http://blog.csdn.net/zhoukang0916/archive/2009/10/14/4669743.aspx
  
  
  //----Linq to sql + gridview
  
  FDCJYDataContext fdc = new FDCJYDataContext();
   
   public void Bind()
   {
   gvwMessage.DataSource = from m in fdc.Message where m.UserName == Session["user"].ToString() select m;
   gvwMessage.DataKeyNames = new string[] { "ID" };
   gvwMessage.DataBind();
   }
   protected void gvwMessage_RowDeleting(object sender, GridViewDeleteEventArgs e)
   {
   string ss = gvwMessage.DataKeys[e.RowIndex].Value.ToString();
   var message = fdc.Message.Single(m => m.ID == int.Parse(ss));
   fdc.Message.DeleteOnSubmit(message);
   fdc.SubmitChanges();
   Bind();
   }
   protected void gvwMessage_RowEditing(object sender, GridViewEditEventArgs e)
   {
   gvwMessage.EditIndex = e.NewEditIndex;
   Bind();
   }
  
  //修改(更新):不同于上面数据库
   protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)//更新
   {
   var zhi = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Value.ToString());
   Tb_love ff=love.Tb_love.Single(b=>b.ID==(zhi));
   ff.name = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[0].FindControl("tex_name"))).Text.ToString().Trim();
   ff.age = Convert.ToInt32(((TextBox)(GridView1.Rows[e.RowIndex].Cells[0].FindControl("tex_age"))).Text.ToString().Trim());
   ff.love = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[0].FindControl("tex_love"))).Text.ToString().Trim();
   love.SubmitChanges();
   GridView1.EditIndex = -1;
   bind();
   }

linq to sql 中增删改查的更多相关文章

  1. Linq to SQL 简单增删改查

    用Linq大大减少了对数据库的一般操作所需的编码量.运行下面事例之前,首先建一个叫做Alien的数据库表. CREATE TABLE [dbo].[Aliens](    [Id] [int] IDE ...

  2. Linq to SQL 的增删改查操作

    Linq,全称Language Integrated Query,是C#语言的一个扩展,可以将数据查询直接集成到编程语言本身中. Linq分为查询语法和方法语法,说白了查询语法就是 from wher ...

  3. 【ASP.NET MVC系列】浅谈jqGrid 在ASP.NET MVC中增删改查

    ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...

  4. 【黑马Android】(04)数据库的创建和sql语句增删改查/LinearLayout展示列表数据/ListView的使用和BaseAdater/内容提供者创建

    数据库的创建和sql语句增删改查 1. 载入驱动. 2. 连接数据库. 3. 操作数据库. 创建表: create table person( _id integer primary key, nam ...

  5. 数据库基本查询语句(SQL常用增删改查语句 简单复习 mark)

    SQL常用增删改查语句 1增 1.1[插入单行]insert [into] <表名> (列名) values (列值)例:insert into Strdents (姓名,性别,出生日期) ...

  6. oracle触发器中增删改查本表

    oracle触发器中增删改查本表 (1)只有before insert触发器中才可以查询或更新本表 create or replace trigger tri_test_ins before inse ...

  7. Linq 数据库操作(增删改查)

    Linq数据库增删改查 Linq是一种查询语言,集成包含在formwork中,包含在C#语言中,它的作用是降低查询的门槛,提高开发效率,是我们必须掌握的技术之一,下面是我自己对linq数据库操作的方法 ...

  8. 基本 SQL 之增删改查(一)

    上篇文章,我们介绍了数据的基本 DDL 语句,你应当具备基本的创建数据库.数据表的 SQL 语句,以及表字段的基本数据类型的熟知. 那么本篇就来总结总结大家日常最频繁接触到的 DDM 语句,也就是基本 ...

  9. web sql 基本操作 - 增删改查

    不喜欢看md原文的 可以访问这个链接:http://note.youdao.com/noteshare?id=6a91e3dea7cdf5195bb0e851d9fcb5a5 # web sql 增删 ...

随机推荐

  1. vue+SSM验证码实现

    源码:https://github.com/HannahLihui/StudentManager-SSM/tree/master/SSM-git/StudentManager-SSM-master 1 ...

  2. tcpcopy简介

    本文内容是整理自 王斌的博客(http://blog.csdn.net/wangbin579)和郑钧的博客(http://www.cnblogs.com/zhengyun_ustc),以便让自己可以有 ...

  3. jQuery下拉框操作系列$("option:selected",this) &&(锋利的jQuery)

    jQuery下拉框操作系列$("option:selected",this)  &&(锋利的jQuery) <!DOCTYPE html> <ht ...

  4. NOIP2017 题解

    QAQ--由于没报上名并没能亲自去,自己切一切题聊以慰藉吧-- 可能等到省选的时候我就没有能力再不看题解自己切省选题了--辣鸡HZ毁我青春 D1T1 小凯的疑惑 地球人都会做,懒得写题解了-- D1T ...

  5. Django基础七之Ajax

    一 Ajax简介 1.简介 AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步的Javascript和XML”.即使用Javascript语言与服务器进行异 ...

  6. 纯web实现游记类手机端应用

    初衷 当初的一个学习框架项目,采用sui框架实现的一套手机端页面.今天清理github的时候重新整理了一下,因为设计的确实不错嘛,拿出来大家一起学习...哈哈 说明 采用sui框架 纯html/css ...

  7. freecodecamp 基础算法题笔记

    数组与字符串的转化 字符串转化成数组 reverse方法翻转数组顺序 数组转化成字符串. function reverseString(str) { a= str.split("" ...

  8. vscode 代码跳转之PHP篇

    1.安装插件:PHP IntelliSense 2.配置:"php.executablePath": "C:\\php\\php.exe", 但是目前有问题,跨 ...

  9. drupal7 查看哪些模块实现了某个钩子

    module_implements($hook) 可参考函数module_invoke_all function module_invoke_all($hook) { $args = func_get ...

  10. 实现ListView的加载更多的效果,如何将按钮布局到始终在ListView的最后一行

    实现方式一:在代码中实现: 1,在一个布局中定义一个Button,在活动中加载Button的父布局, 例如:View bottomView = getLayoutInflater().inflate( ...