reborn: ASP.NET Arraywerte gehen verloren.

Beitrag lesen

Hi dedlfix,

private string[] dasArray;
  public string[] DasArray {
    get {
      if (dasArray == null)
        initialisieren_und_befüllen();
      return dasArray;
    }
  }

genau das würde eben nicht korrekt laufen, wenn es darum geht Zustände zwischen mehrere Anfragen zu behalten. Folgendes Beispiel speichert im ViewState:

public string[] DasArray
{
  get
  {
    string[] dasArray = (string[])this.ViewState["dasArray"];

if (dasArray == null)
    {
      dasArray = erstellen_und_befüllen();
      this.ViewState["dasArray"] = dasArray;
    }

return dasArray;
  }
}

Man bedenke aber, dass zum Speichern im ViewState eine Serialisierung erforderlich ist (hier möglich, da Array von Strings serialisierbar sind).

LG