未将对象引用设置到对象的实例

各位高手你们好:下面是明日科技在线考试系统,我想改成随机生成试题,随机生成的试题顺序和计算成绩的顺序一致。我做了下面3处改动,运行结果能打开考试页面做题,但是点击交卷按钮时出错提示:未将对象引用设置到对象的实例.这一行错行 64: DataRow[]row1 = dt.Select("id=" + id);请高手指点一下上面的改动对不对,下面怎样改。

1:前台Aspx中加了
<tr>
<td colspan="2">
<asp:HiddenField ID="hidGenId1" runat="server" Value='<%#DataBinder.Eval(Container.DataItem, "id")%>' />

</tr>
2:后台
btnSubmit_Click下面加了
for (int i = 0; i < DataList1.Items.Count; i++)

{
string id=((HiddenField)(DataList1.Items[i].FindControl("hidGenID1"))).Value;
}
3://核对单选题答案中加了
case 3:
SqlDataAdapter myadapter3 = new SqlDataAdapter("select id,que_answer"
+ " from tb_Questions where que_type='数学题'and que_lessonid="
+ dd1 + " and que_taotiid=" + dd2 + " order by newid()", con);
DataSet myds3 = new DataSet();
myadapter3.Fill(myds3);
string id = ((HiddenField)(DataList1.Items[i].FindControl("hidGenID1"))).Value;
DataTable dt = (DataTable)ViewState["dt"];
DataRow[] row1 = dt.Select("id=" + id);

//计算单选题成
foreach (DataRow answer1 in row1)
{
int_row1 += 1;
if (int_row1<= 10)
{
RadioButtonList rbl = (RadioButtonList)(DataList1.Items[int_row1 - 1].FindControl("RadioButtonList1"));
if (rbl.SelectedValue == "")
{
this.lblSel.Text = int_row1Point.ToString();
}
else
{
float ti = DataList1.Items.Count;
if (answer1["que_answer"].ToString().Trim() == rbl.SelectedValue.ToString().Trim())
{
int_row1Point += 50 / ti;
this.lblSel.Text = int_row1Point.ToString();
}
}
}
}
break;

DataRow[]row1 = dt.Select("id=" + id); 这里抛空引用, 一定是使用了哪个对象的实例, 并且这个实例为空, 在这里我们可以看到只使用了一个对象的实例就是 dt , 所以可能的原因就是dt的值是空, 也就是说没有查询出来结果, 而且这里的结果既然使用id过滤
if(dt==null || dt.Count>0) break;
DataRow[] row1 = dt.Select("id=" + id);
温馨提示:内容为网友见解,仅供参考
无其他回答

C#中未将对象引用设置到对象实例中的意思?
1、出现“未将对象引用设置到对象的实例”错误,一般是下面的原因:ViewState对象为Null。DateSet为空。sql语句或Datebase的原因导致DataReader空。声明字符串变量时未赋空值就应用变量。2、“未将对象引用设置到对象的实例”是一种常见的错误,通常会在使用C#语言时出现。这个错误的意思是,您试图使用一个...

怎样解决未将对象引用设置到实例?
1. 检查对象是否已实例化:在代码中查找引发错误的对象,确认它是否已被正确实例化。如果对象未被实例化,我们需要创建该对象的实例。2. 避免使用null值:避免将对象引用设置为null,特别是在尝试访问其属性或方法之前。如果某个对象可能为空,需要先检查其是否为null,然后再进行操作。3. 使用调试工具跟...

未将对象引用设置到对象的实例是怎么回事?
1、首先,所设置的变量为空值或没有取到值,一般出现在传递参数的时候出现这个问题,也会在使用DataGrid或gridview或datalist等数据控件时出现。2、设置控件名称与codebehind里面的没有对应。3、设置未用new初始化对象或者在程序中所引用的控件不存在。4、然后使用try..catch...finally捕捉错误,或直接用res...

未将对象引用设置到对象的实例。
10、重复定义造成未将对象引用设置到对象的实例错误.二、应用程序方面 (1)所设置的变量为空值或没有取到值,一般出现在传递参数的时候出现这个问题,也会在使用DataGrid或gridview或datalist等数据控件时出现.(2)控件名称与codebehind里面的没有对应 (3)未用new初始化对象 (4)在程序中所引用的控件不存...

C#中“未将对象引用设置到对象的实例”是什么意思?
csharpCopy codePerson person;person.Name = "John"; \/\/ 抛出“未将对象引用设置到对象的实例”异常正确的初始化方法是通过new运算符创建对象并分配内存。例如:csharpCopy codePerson person = new Person();person.Name = "John"; \/\/ 可以正常使用对象已被销毁或回收 如果对象在使用期间被销毁或...

未将对象引用设置到对象的实例,解决办法
在.NET项目的开发中,"未将对象引用设置到对象的实例" 错误是常遇问题。此错误可能源自多个因素,包括但不限于:1、ViewState对象为空。2、DataSet为空。3、SQL语句或数据库操作导致DataReader为空。4、声明字符串变量未赋空值就直接使用。5、未使用new关键字初始化对象。6、Session对象为空。7、对...

错误未将对象引用设置到对象的实例
关于“未将对象引用设置到对象的实例”这个错误的解决步骤如下:1、首先,所设置的变量为空值或没有取到值,一般出现在传递参数的时候出现这个问题,也会在使用DataGrid或gridview或datalist等数据控件时出现。2、设置控件名称与codebehind里面的没有对应。3、设置未用new初始化对象或者在程序中所引用的控件...

未将对象引用设置到对象的实例
未将对象引用设置到对象的实例的原因 一、数据库方面 1、ViewState 对象为Null。2、DateSet 空。3、sql语句或Datebase的原因导致DataReader空。4、声明字符串变量时未赋空值就应用变量。5、未用new初始化对象。6、Session对象为空。7、对控件赋文本值时,值不存在。8、使用Request.QueryString()时,...

如何解决3dsMax打开后显示8221未将对象引用设置到对象的实例8221...
步骤2:检查依赖项 3ds Max项目文件通常依赖于其他文件,例如贴图、纹理、插件等。如果缺少这些依赖项,就会出现“未将对象引用设置到对象的实例”错误。可以检查文件路径是否设置正确,是否存在所需的依赖文件。您还可以尝试通过创建一个新的简化项目文件来检查问题,然后逐步添加依赖项,以确定哪个文件导致...

“\/”应用程序中的服务器错误。未将对象引用设置到对象的实例。
源错误:执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。堆栈跟踪:[NullReferenceException: 未将对象引用设置到对象的实例。SessionHelper.get_ValidateCode() +16 Default.btnSubmit_Click(Object sender, EventArgs e) +254 System.Web.UI.Web...

相似回答
大家正在搜