{
SqlConnection conn = new SqlConnection
(System.Configuration.ConfigurationManager.ConnectionStrings["SWMSConnectionString"].ConnectionString);
SqlCommand comm1 = new SqlCommand("SelectStudentId",conn);
comm1.Parameters.AddWithValue("@intClassId",TextBox1.Text);
comm1.CommandType = CommandType.StoredProcedure;
conn.Open();
SqlDataReader dr1 = comm1.ExecuteReader();
while(dr1.Read())
{
string str = dr1["studentId"].ToString();
SqlCommand comm2 = new SqlCommand("InsertDetail",conn);
comm2.Parameters.AddWithValue("@intClassId", TextBox1.Text);
comm2.Parameters.AddWithValue("@intTimes", TextBox2.Text);
comm2.Parameters.AddWithValue("@strStudentId", str);
comm2.Parameters.AddWithValue("@intHandon",0);
comm2.Parameters.AddWithValue("@intCorrect",0);
comm2.CommandType = CommandType.StoredProcedure;
comm2.Dispose();
}
try
{
SqlDataSource2.Insert();
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('发布作业成功!');</script>");
}
catch
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('添加题目失败!');</script>");
}
dr1.Close();
comm1.Dispose();
conn.Close();
}
6 个解决方案
#1
这种问题要想解决很简单。
在 while(...)上下断点(最左边点一下,出现一个红色的圆圈)。
然后按f5,再按f11,看代码怎么执行。
在 while(...)上下断点(最左边点一下,出现一个红色的圆圈)。
然后按f5,再按f11,看代码怎么执行。
#2
//可能没查询出结果 判断下是否有数据dr1.HasRows 检查下存储过程
if (dr1.HasRows)
{
while (dr1.Read())
{ }
}
#3
断点是解决的很好的办法……
这样直接看 偶表示看不出什么问题
也没办法帮你直接在我的电脑上测试
这样直接看 偶表示看不出什么问题
也没办法帮你直接在我的电脑上测试
#4
灰常感谢大家的帮助,问题已解决。
while里只是把SqlCommand 对象写好了,并没有执行。
while里只是把SqlCommand 对象写好了,并没有执行。
#5
+1
#6
...........
#1
这种问题要想解决很简单。
在 while(...)上下断点(最左边点一下,出现一个红色的圆圈)。
然后按f5,再按f11,看代码怎么执行。
在 while(...)上下断点(最左边点一下,出现一个红色的圆圈)。
然后按f5,再按f11,看代码怎么执行。
#2
//可能没查询出结果 判断下是否有数据dr1.HasRows 检查下存储过程
if (dr1.HasRows)
{
while (dr1.Read())
{ }
}
#3
断点是解决的很好的办法……
这样直接看 偶表示看不出什么问题
也没办法帮你直接在我的电脑上测试
这样直接看 偶表示看不出什么问题
也没办法帮你直接在我的电脑上测试
#4
灰常感谢大家的帮助,问题已解决。
while里只是把SqlCommand 对象写好了,并没有执行。
while里只是把SqlCommand 对象写好了,并没有执行。
#5
+1
#6
...........