kav@94 Ответов: 1

Как отобразить сообщения об ошибках после вставки данных в базу данных


Below is my button click event the problem is till the sheet is uploaded successfully i am getting the label messages as error messages on button click but once it is uploaded successfully when i click the button the label messages are not getting displayed   



  protected void btnUpload_Click(object sender, EventArgs e)
    {
        //Validations for From Date,To Date and File Uploader 
        if (ddlmonth.SelectedValue == "0")
        {
            lblerrorMessage.Text = "Please Select The Month";
        }
        else if (ddlyear.SelectedValue == "0")
        {
            lblerrorMessage.Text = "Please Select The Year";
        }
        else if (FileUpload1.HasFile == false)
        {
            lblerrorMessage.Text = "Please Select A File";
        }
        else
        {
            string fileName = Path.GetFileName(FileUpload1.PostedFile.FileName);
            FileUpload1.PostedFile.SaveAs(Server.MapPath("~/Files/" + fileName));
            string fullpath = Path.GetFullPath(Server.MapPath("~/Files/" + fileName));
            ReadExcelSheet obj = new ReadExcelSheet();
            //send filepath,sheet number,selected rows to class file
            DataTable dt = obj.Read(fullpath, 1);
            bool Ismatch = false;
            //string getmonth = txtfromdate.Text.Trim();
            //string getyear = txtToDate.Text.Trim();
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                string date = dt.Rows[i]["Month"].ToString();
                string[] date1 = date.Split('/');
                string month = date1[0];
                string year = date1[2];
                //newly added for the existing code to obtain the month and year
                //from date
                //string[] splitmonth = getmonth.Split('/');
                //string newmonth = splitmonth[0].ToString();
                //txtfromdate.Text = newmonth.ToString();
                ////To date
                //string[] splityear = getyear.Split('/');
                //string newyear = splityear[2].ToString();
                //txtToDate.Text = newyear.ToString();
                if (month == ddlmonth.SelectedValue && year == ddlyear.SelectedValue)
                {
                    Ismatch = true;
                    //break;
                }
                else
                {
                    Ismatch = false;
                    break;
                }
            }
            if (Ismatch == true)
            {
                lblerrorMessage.Visible = false;
                lblerrorMessage.Text = "Valid Document";
            }
            else
            {
                lblerrorMessage.Text = "Not a Valid Document";
                ddlmonth.ClearSelection();
                ddlyear.ClearSelection();
                label1.Text = "";
                return;
            }
            //checking the input month and year records exists or not in DB
            SqlCommand cmd = new SqlCommand("select Uploaded from TestMCount ", con);
            SqlDataAdapter da = new SqlDataAdapter(cmd);
            DataTable DBdt = new DataTable();
            da.Fill(DBdt);
            if (DBdt.Rows.Count > 0)
            {
                int month1;
                bool validMonth = int.TryParse(ddlmonth.SelectedValue, out month1);
                int year1;
                bool validYear = int.TryParse(ddlyear.SelectedValue, out year1);
                var filteredRows = from row in DBdt.AsEnumerable()
                                   let date = row.Field<System.DateTime>("Uploaded")
                                   where date.Month == month1 && date.Year == year1
                                   select row;
                DataRow[] dr = filteredRows.ToArray();
                DataTable selectedrows = filteredRows.CopyToDataTable();
                if (selectedrows.Rows.Count > 0)
                {
                    for (int i = 0; i <= selectedrows.Rows.Count - 1; i++)
                    {
                        string date2 = selectedrows.Rows[i]["Uploaded"].ToString();
                        con.Open();
                        SqlCommand cmd1 = new SqlCommand("delete from TestMCount where Uploaded='" + date2 + "'", con);
                        SqlDataAdapter da1 = new SqlDataAdapter(cmd1);
                        cmd1.ExecuteNonQuery();
                        con.Close();
                    }
                    SqlBulkCopy objbulk = new SqlBulkCopy(con);
                    objbulk.DestinationTableName = "TestMCount";
                    //mapping the columns 
                    objbulk.ColumnMappings.Add("ID", "MID");
                    objbulk.ColumnMappings.Add("Month", "Uploaded");
                    objbulk.ColumnMappings.Add("Client Name", "ClientName");
                    objbulk.ColumnMappings.Add("Charges", "Charge");
                    objbulk.ColumnMappings.Add("Payment", "Payment");
                    objbulk.ColumnMappings.Add("Adjustment", "Adjustment");
                    objbulk.ColumnMappings.Add("W/O", "WO");
                    con.Open();
                    objbulk.WriteToServer(dt);
                    con.Close();
                    label1.Text = "Uploaded Successfully";
                }
                else
                {
                    SqlBulkCopy objbulk = new SqlBulkCopy(con);
                    objbulk.DestinationTableName = "TestMCount";
                    //mapping the columns 
                    objbulk.ColumnMappings.Add("ID", "MID");
                    objbulk.ColumnMappings.Add("Month", "Uploaded");
                    objbulk.ColumnMappings.Add("Client Name", "ClientName");
                    objbulk.ColumnMappings.Add("Charges", "Charge");
                    objbulk.ColumnMappings.Add("Payment", "Payment");
                    objbulk.ColumnMappings.Add("Adjustment", "Adjustment");
                    objbulk.ColumnMappings.Add("W/O", "WO");
                    con.Open();
                    objbulk.WriteToServer(dt);
                    con.Close();
                    label1.Text = "Uploaded Successfully";
                }
            }
            else
            {
                SqlBulkCopy objbulk = new SqlBulkCopy(con);
                objbulk.DestinationTableName = "TestMCount";
                //mapping the columns 
                objbulk.ColumnMappings.Add("Month", "Uploaded");
                objbulk.ColumnMappings.Add("ID", "MID");
                objbulk.ColumnMappings.Add("Client Name", "ClientName");
                objbulk.ColumnMappings.Add("Charges", "Charge");
                objbulk.ColumnMappings.Add("Payment", "Payment");
                objbulk.ColumnMappings.Add("Adjustment", "Adjustment");
                objbulk.ColumnMappings.Add("W/O", "WO");
                con.Open();
                objbulk.WriteToServer(dt);
                con.Close();
                label1.Text = "Uploaded Successfully";
                //txtfromdate.Text = "";
                //txtToDate.Text = "";
                ddlmonth.ClearSelection();
                ddlyear.ClearSelection();
            }
        }


Что я уже пробовал:

я не мог найти никакого решения я я ма вызываю мое событие кнопки в загрузке страницы оно не работает должным образом

Karthik_Mahalingam

в чем проблема?
публикуйте только соответствующий код..

kav@94

проблема в том, что до тех пор, пока я не загружу лист успешно в базу данных, я могу отображать сообщения метки пользователю Выберите месяц, выберите год,не действительный документ, выберите файл все эти сообщения я могу отображать, когда пользователь нажимает кнопку, но как только лист загружен, я не могу видеть сообщения об ошибках при нажатии кнопки, но событие нажатия кнопки срабатывает.

kav@94

моя проблема заключается в том, что я должен снова отображать сообщения об ошибках после успешной загрузки листа againg, если пользователь выбирает неверный месяц и год, но как только данные вставлены, сообщение об ошибке не отображается при нажатии кнопки

Karthik_Mahalingam

да, какой смысл выводить какое-либо сообщение об ошибке после успешной загрузки данных ?
вы пробовали нижеприведенное решение?

1 Ответов

Рейтинг:
2

Karthik_Mahalingam

Очистите label текст на button щелчок

protected void btnUpload_Click(object sender, EventArgs e)
   {
   lblerrorMessage.Text = "";
       .
       .
       .