Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Asp.net计数用户尝试次数_C#_Asp.net - Fatal编程技术网

C# Asp.net计数用户尝试次数

C# Asp.net计数用户尝试次数,c#,asp.net,C#,Asp.net,我是ASP.net新手。这可能是一个简单的问题,但我不知道怎么做。 我的页面上有一个asp.wizard控件,其中在“步骤1”中有一个文本框,用于接受订单号 如果用户在文本框中输入订单号并与数据库匹配,则将用户移动到向导步骤2。若用户输入了错误的值或将其保留为空,则验证程序控件将警告输入值或输入的值错误。 然而,我担心的是,如果用户尝试输入的值超过三次,则应显示弹出窗口并显示消息“您已尝试三次,但您没有有效的订单号” 我试图在serverValidate事件函数中增加计数器,但每次回发页面时都会

我是ASP.net新手。这可能是一个简单的问题,但我不知道怎么做。 我的页面上有一个asp.wizard控件,其中在“步骤1”中有一个文本框,用于接受订单号 如果用户在文本框中输入订单号并与数据库匹配,则将用户移动到向导步骤2。若用户输入了错误的值或将其保留为空,则验证程序控件将警告输入值或输入的值错误。 然而,我担心的是,如果用户尝试输入的值超过三次,则应显示弹出窗口并显示消息“您已尝试三次,但您没有有效的订单号” 我试图在serverValidate事件函数中增加计数器,但每次回发页面时都会将计数器值重置为0。
我现在不知道该怎么做了,因为每次单击“下一步”按钮后我的页面回发我的向导页面我的计数器值重置为0将计数器存储在隐藏的文本字段中。这样,该值将在回发后仍然有效。您可以在javascript中(当用户按下按钮时)或在服务器上增加计数器

以下是一个粗略的框架:

向页面中添加类似以下内容的字段:

    <input type="hidden" runat="server" id="txtCounter" />

将计数器存储在隐藏的文本字段中。这样,该值将在回发后仍然有效。您可以在javascript中(当用户按下按钮时)或在服务器上增加计数器

以下是一个粗略的框架:

向页面中添加类似以下内容的字段:

    <input type="hidden" runat="server" id="txtCounter" />

您可以将其保存在不会重置的会话变量中。

您可以将其保存在不会重置的会话变量中。

如果(Wizard1.ActiveStepIndex==0)
<input type="hidden" id="hdn" runat="server" value="0" />
{ 如果((HiddenField1.Value==“0”)){ HiddenField1.Value=“1”; } else if((HiddenField1.Value==“1”)) { HiddenField1.Value=“2”; } else if((HiddenField1.Value==“2”)) { HiddenField1.Value=“3”; 回复。写下(“警告(‘你试了3次’)”); } Label21.Text=HiddenField1.Value; }
if(Wizard1.ActiveStepIndex==0)
{
如果((HiddenField1.Value==“0”)){
HiddenField1.Value=“1”;
}
else if((HiddenField1.Value==“1”))
{
HiddenField1.Value=“2”;
}
else if((HiddenField1.Value==“2”))
{
HiddenField1.Value=“3”;
回复。写下(“警告(‘你试了3次’)”);
}
Label21.Text=HiddenField1.Value;
} 


您能给出一些示例代码来说明如何做到这一点吗。我正绞尽脑汁想用谷歌搜索几个小时,你的手上会有多个样本。如果我把代码放在代码后面的话。在“加载事件”页面或我在“下一步”按钮单击事件中使用该代码的位置,在第三次尝试后,它确实会弹出任何窗口。它不会弹出任何窗口。对不起,上面的评论,我的意思是不会弹出任何窗口。您可以给出任何示例代码如何做到这一点。我正绞尽脑汁想用谷歌搜索几个小时,你的手上会有多个样本。如果我把代码放在代码后面的话。在页面加载事件或我在下一个按钮点击事件中使用该代码的位置,第三次尝试后,它确实会弹出任何窗口。它不会弹出任何窗口。对于上述评论,我的意思是不会弹出任何窗口。请提供代码,我应该在页面加载上在哪里使用会话,或者在哪里以及如何使用会话。我对asp.net真的很陌生。如何在会话中执行。我试图在我的page_load事件中保存会话,但其say会话在当前上下文ViewState(“MyCounter”)中正确。请提供代码,说明我应该在何处使用page_load上的会话,或者在何处以及如何使用会话。我对asp.net真的很陌生。如何在会话中执行。我试图在我的page_load事件中保存会话,但它的say会话在当前上下文ViewState(“MyCounter”)中是正确的,感谢您的快速回复,但我将此代码放在我的代码隐藏文件中。在第页上加载事件或where@uture:标记(
在hdn.Value=”“+int.Parse(hdn.Value)+1上给出错误;输入字符串的格式不正确。@以后重试:
hdn.Value=“”+(ConvertToInt32(hdn.Value)+1)
错误当前上下文中不存在名称“ConvertToInt32”谢谢您的快速回复,但我将此代码放在代码隐藏文件中的位置。在第_页加载事件或where@uture:标记(
在hdn.Value=“+int.Parse(hdn.Value)+1上给出错误;输入字符串的格式不正确。@以后再试:
hdn.Value=“”+(ConvertToInt32(hdn.Value)+1);
错误当前上下文中不存在名称“ConvertToInt32”
hdn.Value=""+(ConvertToInt32(hdn.Value)+1);
if(hdn.Value=="3")
// do something
if (Wizard1.ActiveStepIndex == 0)
    {
        if ((HiddenField1.Value == "0")){
            HiddenField1.Value = "1";
    }
        else if ((HiddenField1.Value == "1"))
      {
          HiddenField1.Value = "2";
      }

      else if ((HiddenField1.Value == "2"))
      {
          HiddenField1.Value = "3";

          Response.Write("<script language='javascript'>alert('you tried 3 times')</script>");
          }



    Label21.Text = HiddenField1.Value;
    }