الحفاظ على بنية البيانات على Postback Ajax
-
21-09-2019 - |
سؤال
Partial Class ClientCenter_UpdateSub
Inherits System.Web.UI.Page
Structure PInfo
Dim Name As String
Dim Surname As String
End Structure
Dim OldPInfo As New PInfo
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
'blah blah
OldPInfo.Name = Dt.Rows(0).Item("Name").ToString
OldPInfo.Surname = Dt.Rows(0).Item("Surname").ToString
end if
end sub
End Class
في المرة الأولى التي يتم فيها تشغيل الصفحة التي يتم تحميل structrure بشكل صحيح. بعد Postback Ajax ، لا يتم تعيين جميع حقول الهيكل إلى أي شيء. (يبدو أن Dim OldPInfo As New PInfo
يُطلق عليه مرة أخرى) ، لكن من الأفضل أن أسأل الخبراء حتى.
على أي حال ، ماذا أفعل خطأ هنا؟
المحلول
أولاً ، يجب ألا تقوم أبدًا بتعيين متغير خارج خاصية أو طريقة.
ثانياً ، تكون تطبيقات الويب عديمة الجنسية (مما يعني أن لا شيء يتم حفظه تلقائيًا من المكالمة إلى المكالمة - إلا إذا قمت بتخزينها في مكان ما مثل ViewState ، الجلسة ، إلخ).
تذكر قبول هذه الإجابة إذا كانت تساعد في حل مشكلتك.
لا تنتمي إلى StackOverflow