Member 13870499 Ответов: 1

Сообщение об успешном завершении отправки формы с помощью fileupload ASP.NET SQL server?


Этот код работает очень хорошо. Но я не получаю сохраненное сообщение, когда код загрузки файла находится там. Я попытался отправить простую текстовую форму и получил сообщение об успехе, но не тогда, когда там есть код fileupload.

protected void Button1_Click(object sender, EventArgs e)
        {

            string constr = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString;
            using (SqlConnection con = new SqlConnection(constr))
            {
                string filename = Path.GetFileName(FileUpload1.PostedFile.FileName);
                string contenttype = FileUpload1.PostedFile.ContentType;
                using (Stream fs = FileUpload1.PostedFile.InputStream)
                {
                    using (BinaryReader br = new BinaryReader(fs))
                    {
                        byte[] bytes = br.ReadBytes((Int32)fs.Length);

                        string query = "INSERT INTO LeaveReqTable (Name, EPFNo, FileName, ContentType, Data) VALUES (@Name, @EPFNo, @FileName, @ContentType, @Data)";
                        using (SqlCommand cmd = new SqlCommand(query))
                        {
                            cmd.Connection = con;
                            con.Open();

                            cmd.Parameters.AddWithValue("@Name", TextBox1.Text);
                            cmd.Parameters.AddWithValue("@EPFNo", TextBox2.Text);
                            cmd.Parameters.AddWithValue("@FileName", filename);
                            cmd.Parameters.AddWithValue("@ContentType", contenttype);
                            cmd.Parameters.AddWithValue("@Data", bytes);

                            int k = cmd.ExecuteNonQuery();
                            if (k != 0)
                            {
                                Label1.Text = "Record Inserted Succesfully into the Database";
                                Label1.ForeColor = System.Drawing.Color.CornflowerBlue;
                                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Record Inserted Successfully')", true);
                            }
                            con.Close();
                        }
                    }
                }
                Response.Redirect(Request.Url.AbsoluteUri);
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Record Inserted Successfully')", true);
            }
        }


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

I've tried submitting a simple text form and I get success message, but not when fileupload code is there.

1 Ответов

Рейтинг:
6

OriginalGriff

Ну, нет, не будешь.
Вы добавляете предупреждающее сообщение сразу же после выполнения ответа.Перенаправление - и более поздний отправляет HTTP - запрос браузеру, который отправляет этот запрос на веб-сервер, который отвечает новой страницей-все, что вы добавляете или добавляете на "старую" страницу (например, ваше предупреждение), игнорируется, потому что оно было "заменено" новым запросом страницы.


Member 13870499

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