Перезагрузка страницы снова запускает мой обработчик событий - PullRequest
1 голос
/ 11 ноября 2011

Я новичок здесь.У меня вопрос.

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

Это мой код, есть ли у вас какие-либо советы?

Imports System.Data.OleDb
Partial Class Default2
    Inherits System.Web.UI.Page

    Protected Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button3.Click
        Dim myConn As OleDbConnection
        Dim cmd As OleDbCommand
        Dim sqlstring, Fname, Lname, FATHname, Region As String

        Fname = TextBox1.Text
        Lname = TextBox2.Text
        FATHname = TextBox3.Text
        Region = TextBox4.Text

        myConn = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\pcuser10.comm\Documents\vwd.data.accdb")

        myConn.Open()

        sqlstring = " INSERT INTO Table1 (FNAME, LNAME, FATHNAME, REGION) VALUES ('" + Fname + "','" + Lname + "','" + FATHname + "','" + Region + "')"

        cmd = New OleDbCommand(sqlstring, myConn)
        cmd.ExecuteNonQuery()

        myConn.Close()
    End Sub
End Class

Ответы [ 2 ]

0 голосов
/ 11 ноября 2011

Самый простой способ?Оберните все свои элементы управления в UpdatePanel.

<body>
   <asp:UpdatePanel ID="upBody" runat="server">
      <ContentTemplate>

----------All your HTML controls here ----------

      </ContentTemplate>
   </asp:UpdatePanel>
</body>

хорошо, я не рекомендую этот, но лучше, чем ваша текущая ситуация сейчас.

0 голосов
/ 11 ноября 2011

Theres хороший ответ от MainMa на этом форуме для связанного вопроса.

обновление страницы запускает событие снова

больше ничего я не могу добавить, так что проверь:)

...