0

我正在尝试在此代码中从服务器端设置一个值。我有一个文本框来输入票号,当票证被验证和激活时,我希望将这张特殊票证的使用属性更改为 true。

我有这个代码:

        TicketBLL Tickets = new TicketBLL();
        ClientDeviceBLL Devices = new ClientDeviceBLL();


        if (String.IsNullOrEmpty(txtTicket.Text))
        {
            CVUsed.Visible = false;
            CVUsed.Enabled = false;
            CVMember.Enabled = false;
            CVMember.Visible = false;
            CVInValid.Enabled = false;
            CVInValid.Visible = false;
            lblMessages.Text = MessageFormatter.GetFormattedErrorMessage("You can login using a Ticket Number.");
            txtTicket.Focus();
        }
        else
        {
            Ticket = Tickets.GetTicketByTicketNumber(txtTicket.Text);
            ////// we must enter the value of the correct SN and the Client ID              
            Device = Devices.GetClientDeviceBySN(txtSN.Text , Convert.ToInt32(txtClientID.Text));

            if (Ticket != null)
            {
                //Correct Ticket number
                CVInValid.Visible = false;
                CVInValid.Enabled = false;

                if (Ticket.Used == true)
                {
                    //ticket was used, internet forbidden
                    CVUsed.Visible = true;
                    CVUsed.Enabled = true;
                    CVMember.Enabled = false;
                    CVMember.Visible = false;
                    CVUsed.IsValid = false;
                }
                else
                {
                    //if exists but not used, Ticket accepted
                    //check if device is a member if client divices
                    if (Device != null)
                    {
                        //internet access garanteed
                        CVUsed.Visible = false;
                        CVUsed.Enabled = false;
                        CVMember.Enabled = false;
                        CVMember.Visible = false;
                        CVUsed.IsValid = true;
                        CVMember.IsValid = true;

                       //here is my error.
                       //ticket.used is not changing in the database so the next
                       //time he enters the same ticket number it would go through  
                       //again.

                        Ticket.Used = true;                            
                        Response.Redirect("http://www.google.com");
                    }
                    else
                    {
                        //device not member, internet access forbidden
                        CVMember.Enabled = true;
                        CVMember.Visible = true;
                        CVUsed.Visible = false;
                        CVUsed.Enabled = false;
                        CVUsed.IsValid = true;
                        CVMember.IsValid = false;
                    }
                }
            }
            else
            {
                //Ticket Number is not valid
                CVUsed.Visible = false;
                CVUsed.Enabled = false;
                CVMember.Enabled = false;
                CVMember.Visible = false;
                CVInValid.Enabled = true;
                CVInValid.Visible = true;
                CVInValid.IsValid = false;                   
            }
        }

我怎样才能自动更新ticket.used数据库中的值?!

4

1 回答 1

0

如果不连接到数据库,您将无法更新 ticket.used 的值。如果您想知道如何连接数据库和更新,请使用直接查询的存储过程来完成您的工作。看看这个

于 2013-08-23T09:57:39.293 回答