Ich benutze Webform (in asp.net 4.5) in meinem Projekt. Aber manchmal ist Wert meine Viewstate Variable verloren. Es erscheint nur 1 oder 2 Mal an einem Tag.Manchmal ViewState Variable ist verloren Wert
Ich habe einen Schnipsel Code in onpreload wie folgt aus:
protected override void OnPreLoad(EventArgs e)
{
base.OnPreLoad(e);
if (!EnableViewState || Form == null)
return;
if (Session["postbackError"] != null)
{
Session["postbackError"] = null;
//write this error to log file
var ex = new Exception("Lost viewstate");
LogErrorUltil.LogError(ex);
}
if (IsPostBack && Form.Attributes["postback"] == null)
{
Session["postbackError"] = true;
}
Form.Attributes["postback"] = "1";
}
ich in meinem Log sehen, erscheint die Meldung "Lost Ansichtszustand" ist in Protokolldatei schreiben.
aber ich sicher, dass:
1. Web.config nicht
2. App Pool von IIS aktualisiert wird, wird nicht recycelt.
Können Sie mir eine Idee geben, die "Lost Viewstate" in die Protokolldatei geschrieben werden kann, außer 2 Gründe oben?
Ich schätze Ihre Ideen sehr. Vielen Dank für Ihre Ideen.
ViewState und Session sind zwei verschiedene Dinge. – VDWWD
Ja, ich weiß, dass ViewState und Session zwei verschiedene Dinge sind. Aber wie Sie in meinem Code sehen können, setze ich immer Form.Attributes ["postback"] = "1". Aber ich weiß nicht, warum manchmal, Form.Attributes ["Postback"] ist Null in PostBack – user3796752