Gridview中Datakeys 通过主键取得各列的值。(转)

1. 首先在初始化Gridview时候定义主键的数组。

GridViewTeacherStudent.DataKeyNames=new string[] {"courseId","studentId","type","level","unit"};

2. 在进行删除操作,或者对某行进行操作获得列中的值。

string studentId = GridViewTeacherStudent.DataKeys[e.RowIndex]["studentId"].ToString().Trim();

3.如果只有单个的键值时候。如只有”StudentId“一个主键下面直接获得。

string studentId = GridViewTeacherStudent.DataKeys[e.RowIndex].Value.ToString().Trim();

在 GridView1_RowCommand中获取主键的值:

  protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)

  {

  int OrderId = Convert.ToInt32(GridView1.DataKeys[Convert.ToInt32(e.CommandArgument)].Value); }

  在 GridView1_PageIndexChanging中获取主键的值

  protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)

  {

  int index=GridView1.DataKeys[e.NewPageIndex].Value;

  }

  在 GridView1_RowDeleting中获取主键的值

  protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)

  {

  int index=GridView1.DataKeys[e.RowIndex].Value;

  }

  在 GridView1_RowEditing中获取主键的值

  protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)

  {

  int index = GridView1.DataKeys[e.NewEditIndex].Value;

  }

  在 GridView1_RowUpdating中获取主键的值

  protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)

  {

  int index = GridView1.DataKeys[e.RowIndex].Value;

  }

  在 GridView1_RowDataBound中获取主键的值

  protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

  {

  int index = GridView1.DataKeys[e.Row.RowIndex].Value;

  }

原文地址 :http://www.cnblogs.com/LifeKingcn/archive/2012/08/21/2649380.html

时间: 2024-11-09 06:46:14

Gridview中Datakeys 通过主键取得各列的值。(转)的相关文章

开发人员改主键自增列起始值多了个0 !!!

2017-07-23 晚21:21接到开发打来的电话说mysql自增列改大后还能修改吗? 原由:因领导说要保留id 99999和 98888这样的id号 自己用,然后开发就自己改了user_login_account表自增列起始值,开发本想改成100002,然而他多加了一个0,搞成了1000002,这就有点杯具了, 于是开发想试图搞这个值改小成100002,结果改不回来了,他就找到我处理.本想 1 首先和开发沟通后确定影响到了2张表,一个表是user_login_account的自增id列,另一

SQL Server中的联合主键、聚集索引、非聚集索引

我们都知道在一个表中当需要2列以上才能确定记录的唯一性的时候,就需要用到联合主键,当建立联合主键以后,在查询数据的时候性能就会有很大的提升,不过并不是对联合主键的任何列单独查询的时候性能都会提升,但我们依然可以通过对联合主键中的首列除外的其他列建立非聚集索引来提高性能.本文将对联合主键.聚集索引.非聚集索引对查询性能的影响举例说明.步骤一,建立一个测试表,并且插入350万条以上的数据. /*创建测试数据表*/create table MyTestTable(id varchar(10)not n

分布式数据库中全局唯一主键

[相关文章] <分布式数据库中全局唯一主键生成策略的设计与实现><activiti5.10解决分布式集群部署的主键问题><分布式环境下数据库主键方案><如何在高并发分布式系统中生成全局唯一Id><分布式环境下ID生成方法总结> <分布式环境下数据库主键方案> [ http://www.2cto.com/database/201309/243195.html ] 在只使用单数据库时,使用自增主键ID无疑是最适合的.但在集群.主从架构上时

SQLite3中自增主键归零方法

当SQLite数据库中包含自增列时,会自动建立一个名为 sqlite_sequence 的表.这个表包含两个列:name和seq.name记录自增列所在的表,seq记录当前序号(下一条记录的编号就是当前序号加1).如果想把某个自增列的序号归零,只需要修改 sqlite_sequence表就可以了.UPDATE sqlite_sequence SET seq = 0 WHERE name='TableName';也可以直接把该记录删掉: DELETE FROM sqlite_sequence WH

ORACLE中添加删除主键

本文转自:http://blog.chinaunix.net/uid-17079336-id-2832443.html 1.创建表的同时创建主键约束(1)无命名create table student (studentid int primary key not null,studentname varchar(8),age int);(2)有命名create table students (studentid int ,studentname varchar(8),age int,constr

PostgreSQL数据库中获取表主键名称

PostgreSQL数据库中获取表主键名称 一.如下表示,要获取teacher表的主键信息: select pg_constraint.conname as pk_name,pg_attribute.attname as colname,pg_type.typname as typename from pg_constraint inner join pg_class on pg_constraint.conrelid = pg_class.oid inner join pg_attribute

veridata实验举例(5)修改主键上的列值,update操作会被拆分成两条语句

veridata实验举例(5)修改主键上的列值,update操作会被拆分成两条语句 续接"veridata实验举例(4)验证veridata查找出updata.delete操作导致的不同步现象",地址:点击打开链接 环境: Item Source System Target System Platform Red Hat Enterprise Linux Server release 5.4 Red Hat Enterprise Linux Server release 5.4 Hos

数据库中批量导入数据,有两列的值需要从其他表中查出来,我现在没有思路,求解惑

我现在批量往数据库里导正式数据(sql insert),但是数据中有三列分别是岗位,办事处,大区,给的数据中只给了岗位的值,办事处的值可以通过岗位值在岗位表查到,大区的值可以通过办事处的值在办事处表里查到.现在我已经把其他数据都导进去了,只剩办事处和大区没有值,我该如何批量更新这两列的值啊 导入的数据的表: 岗位表: 办事处表: 本人sql不是很好,希望sql大神能给出来解惑一下,拜谢~ 数据库中批量导入数据,有两列的值需要从其他表中查出来,我现在没有思路,求解惑 >> mysql 这个答案描

JPA学习---第十二节:JPA中的联合主键

1.定义实体类,代码如下: (1).将联合主键放到一个类中,代码如下: package learn.jpa.entity; import java.io.Serializable; import javax.persistence.Column; import javax.persistence.Embeddable; /** * * 1.必须要有无擦得构造函数 * 2.必须要实现序列接口 * 3.必须重写 equals() 和 hashCode() 方法 * @Embeddable 告诉 jp