最基本的,拼接字符串在Literal里面显示表,IsPostBack,增删改查基本,?传值 Request接收

LinQ to SQL类

在Default主页里面拖入Literal控件再加入一个按钮,后台写代码

函数类:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; /// <summary>
/// CarDA 的摘要说明
/// </summary>
public class CarDA
{
private DataClassesDataContext context; public CarDA()
{
context = new DataClassesDataContext();
}
public List<Car> selec()
{
return context.Car.ToList();
}
public Car select(string code)
{
var query = context.Car.Where(p => p.Code == code);
return query.First();
}
public void delete(string code)
{
var query = context.Car.Where(p => p.Code == code);
if (query.Count() > )
{
Car data = query.First();
context.Car.DeleteOnSubmit(data);
context.SubmitChanges();
}
}
public void insert(Car data)
{
Productor prod = new Productor();
Brand brand = new Brand();
brand.Brand_Code=data.Brand;
brand.Brand_Name=data.Name;
brand.Prod_Code=data.Code;
brand.Brand_Memo=data.Name; prod.Prod_Code = brand.Prod_Code;
prod.Prod_Name = brand.Brand_Name;
context.Productor.InsertOnSubmit(prod);
context.Brand.InsertOnSubmit(brand);
context.Car.InsertOnSubmit(data);
context.SubmitChanges();
}
public void Update(Car save)//string code, string name,string brand, DateTime time,decimal oil,int powers,int exhaust,decimal price,string pic
{
var query = context.Car.Where(p => p.Code == save.Code);
if (query.Count() > )
{
Car data = query.First();
data.Code = save.Code;
data.Name = save.Name;
data.Brand =save.Brand;
data.Time = save.Time;
data.Oil =save.Oil;
data.Powers = save.Powers;
data.Exhaust = save.Exhaust;
data.Price = save.Price;
data.Pic = save.Pic;
context.SubmitChanges();
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
List<Car> list =new CarDA().selec(); string s = "<table width=100% border=1><tr><td>编号</td><td>名称</td><td>价格</td><td>操作</td></ tr>";//</ table>";
foreach (Car data in list)
{
s += "<tr><td>" + data.Code + " </td><td><a href='Default2.aspx?code=" + data.Code + "'>" + data.Name + "</a></td><td>" + data.Price + "</td><td><a href='delete.aspx?code=" + data.Code + "'>删除</a> <a href='Default2.aspx?code=" + data.Code + "'>修改</a></td></tr>";
}
s += "</ table>";
Literal1.Text = s;
}
protected void Button1_Click(object sender, EventArgs e)
{
Response.Redirect("insert.aspx");
}
}

____________________________________________________我是华丽的分割线____________________________________________________

点击添加按钮 添加:

因为这里牵扯到主外键关系,先要加主键才能建外键,所以为了能运行 用了点手段, 点击按钮触发 Response.Redirect("insert.aspx");转到 insert页面

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; public partial class insert : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ }
protected void Button1_Click(object sender, EventArgs e)
{
Car data = new Car();
data.Code = TextBox2.Text;
data.Name=TextBox3.Text;
data.Brand=TextBox4.Text;
data.Time = Convert.ToDateTime(TextBox5.Text);
data.Oil= Convert.ToDecimal(TextBox6.Text);
data.Powers = Convert.ToInt32(TextBox7.Text);
data.Exhaust = Convert.ToInt32(TextBox8.Text);
data.Price = Convert.ToDecimal(TextBox9.Text);
data.Pic = TextBox10.Text;
new CarDA().insert(data);
Response.Redirect("Default.aspx");
}
}

点击insert页面中的提交 执行完添加函数后会转入Default.aspx主页面 Response.Redirect("Default.aspx");

____________________________________________________我是华丽的分割线____________________________________________________

删除:

每行后面有个删除按钮,超链接点击后导入删除界面,执行删除跳回主页面 ?code把 code=后面的值传走

在指定页面Request["code"]接收,Request["code"]是Object类,如果要用请先转换类型

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; public partial class delete : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
new CarDA().delete(Request["code"].ToString());
Response.Redirect("Default.aspx");
}
}

____________________________________________________我是华丽的分割线____________________________________________________

修改:

修改与添加类似,需要传值,根据传入的值查询具体类,修改后保存

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Car data = new CarDA().select(Request["code"].ToString());
TextBox2.Text = data.Code;
TextBox3.Text = data.Name;
TextBox4.Text = data.Brand.ToString();
TextBox5.Text = data.Time.ToString();
TextBox6.Text = data.Oil.ToString();
TextBox7.Text = data.Powers.ToString();
TextBox8.Text = data.Exhaust.ToString();
TextBox9.Text = data.Price.ToString();
TextBox10.Text = data.Pic;
}
} protected void Button1_Click(object sender, EventArgs e)
{
Car data = new Car();
data.Code =TextBox2.Text;
data.Name =TextBox3.Text ;
data.Brand = TextBox4.Text;
data.Time =Convert.ToDateTime(TextBox5.Text) ;
data.Oil = Convert.ToDecimal(TextBox6.Text);
data.Powers =Convert.ToInt32( TextBox7.Text) ;
data.Exhaust = Convert.ToInt32(TextBox8.Text);
data.Price = Convert.ToDecimal(TextBox9.Text);
data.Pic = TextBox10.Text;
new CarDA().Update(data);
Response.Redirect("Default.aspx");
}
}

这里要注意,查询要加入IsPostBack条件判定,否则点击提交按钮后会刷新页面,我们修改的数据会随刷新页面覆盖,刷新后重新执行查询并覆盖我们之前输入的数据,这个数据虽然在页面上没有显示更改,但是在后台已经被查出来的数据覆盖,所以我们无论怎么修改都是存的查出来的数据,相当于没改.

为了避免这种情况我们用IsPostBack,他会比对如果重复刷新了就不执行查询了.

WebForm增删改查的更多相关文章

  1. Webform(Linq增删改查)

    Linq高集成化的数据访问类,它会自动映射数据库结构,将表名完整映射成为类名,将列名完整映射成字段名数据库数据访问,能大大减少代码量.(1)Linq创建添加LINQ to SQL类,类名需与要连接的数 ...

  2. Asp.net WebApi 项目示例(增删改查)

    1.WebApi是什么 ASP.NET Web API 是一种框架,用于轻松构建可以由多种客户端(包括浏览器和移动设备)访问的 HTTP 服务.ASP.NET Web API 是一种用于在 .NET ...

  3. Web API开发实例——对产品Product进行增删改查

    1.WebApi是什么 ASP.NET Web API 是一种框架,用于轻松构建可以由多种客户端(包括浏览器和移动设备)访问的 HTTP 服务.ASP.NET Web API 是一种用于在 .NET ...

  4. webApi实现增删改查操作

    1.WebApi是什么 ASP.NET Web API 是一种框架,用于轻松构建可以由多种客户端(包括浏览器和移动设备)访问的 HTTP 服务.ASP.NET Web API 是一种用于在 .NET ...

  5. winform 配置文件增删改查

    winform 配置文件是  App.config webform   的配置文件 是web.config 其实基本操作都一样    设置个配置文件  全局文件 访问者个配置文件  对这个配置文件增删 ...

  6. Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示

    Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3TcEzj 注 意 事 项:http:// ...

  7. ASP.NET从零开始学习EF的增删改查

           ASP.NET从零开始学习EF的增删改查           最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...

  8. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(9)-MVC与EasyUI结合增删改查

    系列目录 文章于2016-12-17日重写 在第八讲中,我们已经做到了怎么样分页.这一讲主要讲增删改查.第六讲的代码已经给出,里面包含了增删改,大家可以下载下来看下. 这讲主要是,制作漂亮的工具栏,虽 ...

  9. 通过Java代码实现对数据库的数据进行操作:增删改查

    在写代码之前,依然是引用mysql数据库的jar包文件:右键项目-构建路径-设置构建路径-库-添加外部JAR 在数据库中我们已经建立好一个表xs :分别有xuehao  xingming    xue ...

随机推荐

  1. [UOJ30/Codeforces Round #278 E]Tourists

    传送门 好毒瘤的一道题QAQ,搞了好几好几天. UOJ上卡在了53个点,CF上过了,懒得优化常数了 刚看时一眼Tarjan搞个强连通分量然后缩点树链剖分xjb搞搞就行了,然后写完了,然后WA了QAQ. ...

  2. Java数组及其内存分配

    几乎所有的程序设计语言都支持数组.Java也不例外.当我们需要多个类型相同的变量的时候,就考虑定义一个数组.在Java中,数组变量是引用类型的变量,同时因为Java是典型的静态语言,因此它的数组也是静 ...

  3. 新手理解HTML、CSS、javascript之间的关系

    http://www.cnblogs.com/dreamingbaobei/p/5062901.html 工作多年,一直忙忙碌碌的应用各种技术,现在不忙了,问问自己究竟在做什么,究竟会什么竟答不上来, ...

  4. Linux系统概述

    1.Linux是一套免费使用 和自 由传播的类Unix操作系统. 这个系统是由世界各地的成千上万的程序员 设计和实现的.其目 的是建立不受任何商品化软件的版权制约的. 全世界都能自 由使用的Unix兼 ...

  5. 硬盘下安装Ghost系统简易教程

    硬盘安装器下载:https://eyun.baidu.com/s/3c2NvcvI 密码:Cv7F 使用本方法可在没有光驱.光盘.启动U盘等任何系统安装设备的情况下安装Ghost版XP.Win7/8/ ...

  6. jquery实现 复选框 全选

    $("#checkAll").change(function () { $(this).closest("table") .find(":checkb ...

  7. sql 查询

    select * from (select * ,row_number() over(partition by CreateUID order by asid)num from AuctionSell ...

  8. JavaScript方法call、apply、caller、callee、bind的使用详解及区别

    一.call 方法 调用一个对象的一个方法,以另一个对象替换当前对象(其实就是更改对象的内部指针,即改变对象的this指向的内容). 即  “某个方法”当做“指定的某个对象”的“方法”被执行. Js代 ...

  9. 记 Mac Pro 系统升级后,编译安装 PHP-5.6.28 / PHP-7.0 报错修复过程

    买 Mac Pro 的时候,系统为 OS X 10.11.5,编译 PHP-5.6.21 的时候,也遇到一些坑,安装过程记录如下: Mac Pro 编译安装 PHP 5.6.21 及 问题汇总 后来, ...

  10. Asp.Net Core--基于声明的授权

    翻译如下: 当创建身份时,其可以被分配由可信方发布的一个或多个声明. 索赔是名称值对,表示主题是什么,而不是主体可以做什么. 例如,您可能有驾驶执照,由当地驾驶执照颁发. 您的驾驶执照上有您的出生日期 ...