C# '中的服务器错误\';申请书;索引超出范围。必须为非负且小于集合参数名称的大小:index
“索引超出范围。必须为非负且小于集合参数名称的大小:Index。这是一个屏幕截图: 当我选择要打印的文档时,应用程序将随机打印其他文档。请使用您的帮助大师:( 这是我的代码:C# '中的服务器错误\';申请书;索引超出范围。必须为非负且小于集合参数名称的大小:index,c#,sharepoint,C#,Sharepoint,“索引超出范围。必须为非负且小于集合参数名称的大小:Index。这是一个屏幕截图: 当我选择要打印的文档时,应用程序将随机打印其他文档。请使用您的帮助大师:( 这是我的代码: protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) { trackingDataContext dc = new trackingDataContext(MyClass.conn);
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
trackingDataContext dc = new trackingDataContext(MyClass.conn);
if (e.CommandName == "Print")
{
int row = Int32.Parse(e.CommandArgument.ToString()) + (GridView1.PageIndex * GridView1.PageSize);
GridViewRow gr = GridView1.Rows[row];
string ID = gr.Cells[0].Text;
string jenis_dokumen = gr.Cells[2].Text;
string nopek = gr.Cells[4].Text;
string rdl = "";
var td = (from t in dc.tracking_dokumens where t.id == Convert.ToInt16(ID) select t).SingleOrDefault();
var area = (from a in dc.field_lists where a.id == td.field_id select a).SingleOrDefault();
if (area.field_name == "Kantor Pusat Jakarta")
{
if (jenis_dokumen == "SPD")
{
rdl = "deklarasi.rdl";
}
else if (jenis_dokumen == "Panjar Dinas")
{
rdl = "panjar_dinas.rdl";
}
else if (jenis_dokumen == "Pengajuan Panjar Kerja")
{
rdl = "panjar_kerja.rdl";
}
else if (jenis_dokumen == "SP3")
{
rdl = "sp3.rdl";
}
else if (jenis_dokumen == "Pertanggungjawaban Panjar Kerja")
{
rdl = "pertanggungjawaban.rdl";
}
}
else
{
if (jenis_dokumen == "SPD")
{
rdl = "deklarasi_area.rdl";
}
else if (jenis_dokumen == "Panjar Dinas")
{
rdl = "panjar_dinas_area.rdl";
}
else if (jenis_dokumen == "Pengajuan Panjar Kerja")
{
rdl = "panjar_kerja_area.rdl";
}
else if (jenis_dokumen == "SP3")
{
rdl = "sp3_area.rdl";
}
else if (jenis_dokumen == "Pertanggungjawaban Panjar Kerja")
{
rdl = "pertanggungjawaban_area.rdl";
}
}
Response.Redirect(MyClass.Site + "/_layouts/ReportServer/RSViewerPage.aspx?rv:RelativeReportUrl=/sites/tracking/Report/"+rdl+"&Source="+MyClass.Site+"/Report/Forms/AllItems.aspx&DefaultItemOpen=1&rp:nopek="+nopek+"&rp:id="+ID);
}
}
检查发生异常的索引和数组大小。显然,您正在尝试获取索引中的项为负或超过(数组中的项数-1).放一个断点,看看哪一行会抛出错误,PS:通常这种错误是由以下原因引起的:u试图从没有索引的数组中获取索引。这不是答案,请将其放在注释中。