C# 外部错误处理响应(第二个post)
我在下面的代码中遇到了一个问题,LBL消息是根据字段的输入更新的。代码的目的是显示验证错误、成功消息(MessageICCID)或过程错误消息 在下面的更新中,一旦状态被设置为p,那么另一个进程会将其更改为S。当设置为S时,下面的代码有时无法捕获状态S?它会一直加载到超时,如果我们能在状态设置为s时更新LBL消息,我将不胜感激?一旦状态设置为S,我需要检测到这一点并在LBL消息上显示 如何最好地考虑更新过程或外部过程中出现的错误 以下是我迄今为止所尝试的: SQL Select语句如下: 1-(GetDataByNumber) 2-(UpdateICIDByNumber) ''C# 外部错误处理响应(第二个post),c#,asp.net,C#,Asp.net,我在下面的代码中遇到了一个问题,LBL消息是根据字段的输入更新的。代码的目的是显示验证错误、成功消息(MessageICCID)或过程错误消息 在下面的更新中,一旦状态被设置为p,那么另一个进程会将其更改为S。当设置为S时,下面的代码有时无法捕获状态S?它会一直加载到超时,如果我们能在状态设置为s时更新LBL消息,我将不胜感激?一旦状态设置为S,我需要检测到这一点并在LBL消息上显示 如何最好地考虑更新过程或外部过程中出现的错误 以下是我迄今为止所尝试的: SQL Select语句如下: 1-(
while循环需要有一个条件才能中断:
while (true)
{
dt = ch.GetDataByNumber(txtNumber.Text);
if (dt.Rows.Count > 0)
{
if (dt.Rows[0]["StatusICCID"].ToString() == "S")
{
lblMessage.Text = dt.Rows[0]["MessageICCID"].ToString();
break;
} else { break; } // break if the wrong row?
}
else { break; } // break when there are no rows.
}
在你的问题中,你在说什么错误?您的意思是更新查询的sql错误?请详细说明。我已经提供了一个可能的答案;“请提供任何帮助”并不能真正解释此解决方案不起作用的原因。请提供有关此解决方案不起作用的更多详细信息。首先感谢您的帮助,陛下,其次,当状态设置为S时,此解决方案仍无法更新LBL消息?那么现在:有时候工作,LBL消息更新,有时候不更新?那么现在需要帮忙吗?谢谢你@Metro Smurf,有什么帮助吗?我希望LBL消息在状态设置为S时始终返回消息…我不确定还能提供什么。可能在两种中断条件下都将
lblMessage.Text
设置为某个值,您可以看到while循环失败的地方?
UPDATE ChangesimLive SET ICCID = @ICCID, StatusICCID = @StatusICCID,userid=@userid WHERE (number = @number)
protected void btnActivate_Click(object sender, EventArgs e)
{
lblMessage.Text = "";
if (txtICCID.Text.Length != 19)
{
lblMessage.Text = "Incorrect ICCID. Enter 19 Digit ICCID";
SetFocus(txtICCID);
return;
}
DataTable dt = ch.GetDataByNumber(txtNumber.Text);
if (dt.Rows.Count > 0)
{
ch.UpdateICCIDByNumber(txtICCID.Text, "P", Convert.ToInt32(Session["UserId"].ToString()), txtNumber.Text);
while (true)
{
dt = ch.GetDataByNumber(txtNumber.Text);
if (dt.Rows.Count > 0)
{
if (dt.Rows[0]["StatusICCID"].ToString() == "S")
{
lblMessage.Text = dt.Rows[0]["MessageICCID"].ToString();
break;
}
}
}
}
while (true)
{
dt = ch.GetDataByNumber(txtNumber.Text);
if (dt.Rows.Count > 0)
{
if (dt.Rows[0]["StatusICCID"].ToString() == "S")
{
lblMessage.Text = dt.Rows[0]["MessageICCID"].ToString();
break;
} else { break; } // break if the wrong row?
}
else { break; } // break when there are no rows.
}