ist es möglich, Liste in Session-Variable in Asp.net C# zu speichern?Store Liste zu Sitzung
Antwort
Ja, können Sie jedes Objekt speichern (Ich gehe davon aus Sie verwenden ASP.NET mit den Standardeinstellungen, die im Prozess ist Sitzungszustand):
Session["test"] = myList;
Sie es wieder auf den ursprünglichen Typ umwandeln sollte Verwendung:
var list = (List<int>)Session["test"];
// list.Add(something);
Wie Richard weist darauf hin, Sie besonders vorsichtig sein sollten, wenn Sie anderen Sitzungsstatus Modi verwenden (zB SQL Server), die Objekte erfordern sein serializable.
Nicht genau richtig. Wenn Sie einen anderen Sitzungsspeicher als den Standardwert in proc verwenden müssen, muss die Klasse serialisierbar sein. Daher ist es am besten, alle Klassen, die Sie in der Sitzung einfügen, als Serializable von Anfang an zu markieren - dann können Sie den Mechanismus ändern, ohne Ihren Code bearbeiten zu müssen. – RichardOD
Gültiger Punkt außer 1. 'Liste
@ Mehrdad- Ich verstehe, was Sie meinten und es ist gut, Sie haben ein Codebeispiel. Ich würde einfach das "beliebige Objekt" in Ihrer Antwort umschreiben. – RichardOD
Ja. Für welche Plattform schreibst du? ASP.NET C#?
List<string> myList = new List<string>();
Session["var"] = myList;
Dann abzurufen:
myList = (List<string>)Session["var"];
ich in einer Klassendatei nicht in den Anwendungsbereich der Seite gefunden, die obige Art und Weise funktioniert hat (was ich habe immer verwendet wird) nicht.
fand ich eine Abhilfe in diesem „Kontext“ wie folgt:
HttpContext.Current.Session.Add("currentUser", appUser);
und
(AppUser) HttpContext.Current.Session["currentUser"]
Ansonsten ist der Compiler erwarten eine Zeichenfolge, wenn ich das Objekt in der Sitzung Objekt gerichtet.
Ich erhalte einen solchen Fehler: System.Web.HttpException: Der Sitzungsstatus konnte nicht serialisiert werden. Im Modus 'StateServer' und 'SQLServer' serialisiert ASP.NET die Sitzungsstatusobjekte, und daher sind nicht serialisierbare Objekte oder MarshalByRef-Objekte nicht zulässig. Die gleiche Einschränkung gilt, wenn der benutzerdefinierte Sitzungsspeicher im benutzerdefinierten Modus eine ähnliche Serialisierung durchführt –
die Sie interessieren ..
List<Cat> cats = new List<Cat>
{
new Cat(){ Name = "Sylvester", Age=8 },
new Cat(){ Name = "Whiskers", Age=2 },
new Cat(){ Name = "Sasha", Age=14 }
};
Session["data"] = cats;
foreach (Cat c in cats)
System.Diagnostics.Debug.WriteLine("Cats>>" + c.Name); //DEBUGGG
YourListType ListName = (List<YourListType>)Session["SessionName"];
- 1. Laravel Store Array in Sitzung
- 2. Spring Store-Objekt in Sitzung
- 3. Store/Sitzung während Server anhalten Rendering
- 4. Store Python Anfragen Sitzung im persistenten Speicher
- 5. Django: Filter, Liste, Sitzung
- 6. Magento: Produktübersetzungen von "Store 1> German Store View" zu "Store 2> German Store View"
- 7. Wie zu pflegen Sitzung
- 8. SharedPreferences zu Sitzung
- 9. Benutzer zu iTunes App Store oder Google Play Store umleiten?
- 10. Import Freebase zu Triple-Store
- 11. Zu viele Weiterleitungen mit Login-Sitzung Beispiel
- 12. Umleiten zu App Store mit window.location
- 13. Store Clojure REPL Zeilen
- 14. ExpressJS & Websocket & Sitzung teilen
- 15. Wie spotify Sitzung zu erneuern?
- 16. php Sitzung zu Cookie ändern
- 17. Authentifizierung zu neuer Sitzung hinzufügen
- 18. Abrufen der Liste der installierten Windows Store-Apps
- 19. Catalyst Plugin Sitzung Sitzung löschen, bevor es verwendet wird
- 20. Store Enum in Datenbank
- 21. store HttpContext.Current.Request.Files in Session-Variablen
- 22. ES6 class store
- 23. Google Play Store Autosuggest?
- 24. Sitzung in Laravel deaktivieren
- 25. Express-Sitzung nicht Sitzung speichern
- 26. STORE-Ausgabe zu einer einzelnen CSV?
- 27. Solr Blob Store-API - Blob zu groß
- 28. Link zu Play Store-Abonnement verwalten
- 29. So filtern Sie eine Liste pro Sitzung auf Meteor.js
- 30. Eine Liste der aktiven Sitzung von RedisSessionStateProvider abrufen
Bitte sehen Tags. Er hat eindeutig erwähnt C# asp.net –