تکرار عملیات با refresh کاربر
سلام
توی asp.net در صفحاتی که عملیات های مثل insert توی دیتابیس داریم، بعد از انجام عملیات اگر کاربر صفحه رو refresh که مجدد عملیات تکرار خواهد شد، برای برطرف کردن این مورد چه باید کرد ؟
تشکر
7 پاسخ
ضمن اینکه ViewState صفحه هم false هست
معادلش توی c# که جواب نداد!
ضمن اینکه توی این کدی که فرمودین باز هم این پیغام نشون داده میشه
سلام اگه با asp.net web form کار میکنید میتونید سمت سرور بعد از ذخیره اطلاعات داده ها را از داخل input ها (TextBox) حذف کنید.
ViewState
بله web form هست
بعد از insert سمت سرور ()ViewState.Clear انجام میدم ولی بازم توی refresh عملیات قبلی انجام میشه!
سلام دوست عزیز
برای حل این مشکل می توانید از روش زیر استفاده کنید :
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
Session("update") = Server.UrlEncode(System.DateTime.Now.ToString())
ViewState("update") = ""
End If
End Sub
Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
If Session("update").ToString() = ViewState("update").ToString() Then
MsgBox("postback ttttis true")
Session("update") = Server.UrlEncode(System.DateTime.Now.ToString())
Else
End If
End Sub
Private Sub form1_PreRender(sender As Object, e As EventArgs) Handles form1.PreRender
ViewState("update") = Session("update")
End Sub
سلام دوست عزیز
برای اجرا نشدن کد نوشته شده در رویداد یک کنترل بعد از هر بار رفرش صفحه می تونید از ترفند زیر استفاده کنید :
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load If Not Page.IsPostBack Then Session("update") = Server.UrlEncode(System.DateTime.Now.ToString()) End If End Sub Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click If Session("update").ToString() = ViewState("update").ToString() Then 'در این بخش کد مورد نظر خودتون رو بنویسید MsgBox("fffffffffffffffff") Session("update") = Server.UrlEncode(System.DateTime.Now.ToString()) Else End If End Sub Private Sub form1_PreRender(sender As Object, e As EventArgs) Handles form1.PreRender ViewState("update") = Session("update") End Sub
سلام دوست عزیز برای حل این مشکل می توانید از روش زیر استفاده کنید :
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load If Not Page.IsPostBack Then Session("update") = Server.UrlEncode(System.DateTime.Now.ToString()) ViewState("update") = "" End If End Sub Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click If Session("update").ToString() = ViewState("update").ToString() Then MsgBox("postback ttttis true") Session("update") = Server.UrlEncode(System.DateTime.Now.ToString()) Else End If End Sub Private Sub form1_PreRender(sender As Object, e As EventArgs) Handles form1.PreRender ViewState("update") = Session("update") End Sub