0

异常总是在以下语句中引发..:

    protected void DataList2_SelectedIndexChanged(object sender, EventArgs e)
    {
x= should get the primary key of the item selected from  a datalist
        Server.Transfer("AnswerQuestion.aspx?x=" + int.Parse(DataList2.DataKeyField) + "&question=" +"bla bla") + "&time=" + DateTime.Now);
    }

它在这里抛出异常..:(即使我将它分开 int threadID = int.Parse(DataList1.DataKeyField.ToString()); 为什么?

4

3 回答 3

3

好吧,我强烈怀疑是这个电话:

int.Parse(DataList2.DataKeyField)

这表明DataList2.DataKeyField不是当前语言环境中整数的有效字符串表示形式。(顺便说一句,您可能应该进行这种格式化并可能使用CultureInfo.InvariantCulture.

于 2011-07-13T13:02:51.833 回答
1

因为“DataList2.DataKeyField”很可能是不可解析的,并且格式不正确。

于 2011-07-13T13:02:27.077 回答
1

Server.Transfer 不支持查询字符串,它不是页面请求,只是将控制权转移到另一个页面。存储要传递到另一个页面的数据Context.Items['x']=yourVal并在另一个页面上使用它们。

于 2011-07-13T13:07:46.910 回答