各位大神帮看看,为什么总是指定的参数已超出有效值的范围。

windspeedky 2013-06-10 10:30:02
代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.OleDb;
using System.Configuration;

public partial class Main : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
using (OleDbConnection olecon = new OleDbConnection(ConfigurationManager.ConnectionStrings["conn"].ToString()))
{
string name = Session["name"].ToString();

{
try
{
olecon.Open();
OleDbCommand oledbcommand = new OleDbCommand("select * from StudentInfo where StudentId='" + name + "'", olecon);
OleDbDataReader da = oledbcommand.ExecuteReader();
this.GridView1.DataSource = da;
this.GridView1.DataKeyNames = new string[] { "StudentId" };
this.GridView1.DataBind();
da.Close();
}
catch (Exception)
{
throw;
}
}
}
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
}
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
}
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
string A = GridView1.DataKeys[e.RowIndex].Value.ToString();
string B = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim();
string C = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim();
string D = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim();
string E = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[4].Controls[0])).Text.ToString().Trim();
string F = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[5].Controls[0])).Text.ToString().Trim();
string G = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[6].Controls[0])).Text.ToString().Trim();
string H = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[7].Controls[0])).Text.ToString().Trim();

string s = "update StudentId='" + A + "',StudentName='" + B + "',Sex='" + C + "',DateOfBirth='" + D + "',Specialty='" + E + "',Email='" + F + "',Root='" + G + ",PassWord='" + H + "'";
Response.Write("<script language=javascript> alert('数据更新成功!');window.location='ManagerNews.aspx'</script>");




}
}
...全文
352 5 打赏 收藏 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
windspeedky 2013-06-11
  • 打赏
  • 举报
回复

liujf 2013-06-11
  • 打赏
  • 举报
回复
你看看你数据表中有几行,这个错误已经很明确的说明是索引值越界的问题
MikeCheers 2013-06-10
  • 打赏
  • 举报
回复
这几段代码都有可能出现你说的问题 不知道你说的问题出在哪部分 一般这种问题的来源无非就是数组越界 设置断点跟踪一下 不难查
Mic_Gary 2013-06-10
  • 打赏
  • 举报
回复
数据库表贴出来看看,或者你自己比较一下,这个studentid怎么会等于个name去呢,很有可能是你这个name弄错了吧,不过如果你数据库就是这样设计的,那我也没话说了
moonwrite 2013-06-10
  • 打赏
  • 举报
回复
学会下断点 自己调试 看看最后拼接出来的sql 另外 我很讨厌拼接字符串 下面这种写法 可以减少拼接出错 http://blog.csdn.net/shuyizhi/article/details/6100331
内容概要:本文介绍了PCIe 3.x至4.0版本在物理层(PHY)逻辑层面的关键技术演进,重点包括从8b/10b编码向128b/130b编码的转变,以提升带宽效率并降低开销。新编码机制通过同步头与加扰技术实现数据块对齐、帧定界和边沿密度控制,同时引入发射端均衡(Tx Equalization)和多阶段训练流程,以应对高速信道下的信号完整性挑战。文档还详细阐述了测试性功能如合规性模式、环回机制以及有序集(Ordered Sets)的设计用途,并前瞻性地预览了PCIe 4.0支持16GT/s速率的技术方向,包括继续采用128b/130b编码、增强均衡流程和使用Retimer扩展通道能力。; 适合人群:从事高速接口设计、芯片开发或系统架构的硬件工程师,特别是参与PCIe协议实现、物理层验证及信号完整性优化的研发人员。; 使用场景及目标:①理解PCIe 3.0中128b/130b编码原理及其相较于8b/10b的优势;②掌握发射端自适应均衡机制与链路训练流程;③为开发兼容PCIe 4.0的产品提供前瞻技术参考;④用于硬件测试与合规性验证方案设计。; 阅读建议:此资料技术深度较高,建议结合PCIe Base Specification进行对照学习,重点关注编码结构、有序集格式、均衡状态机及错误恢复机制,在实际项目中可作为物理层设计与调试的重要参考依据。

111,128

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧