Benutzerdefinierte Verwendung von Indexern []

8

Ich möchte ein Objekt erstellen, das ähnlich wie ASP.Net Session funktioniert.

Sagen wir, ich nenne dieses Objekt mySession, ich möchte es so machen, wenn du es tust

%Vor%

Es fügt es entweder zu einer Datenbanktabelle hinzu, wenn sie nicht existiert, oder aktualisiert sie, falls dies der Fall ist. Ich kann eine Methode schreiben, um dies zu tun, aber ich habe keine Ahnung, wie man es auslöst, wenn es mit der Indexersyntax ([]) verwendet wird. Ich habe noch nie ein Objekt mit Indexern erstellt.

Bevor jemand etwas sagt, weiß ich, dass die ASP.Net-Sitzung in der Datenbank gespeichert werden kann, aber in diesem Fall brauche ich eine etwas einfachere angepasste Lösung.

Alle Zeiger oder Beispiele für die Verwendung von Indexern auf diese Weise wären großartig.

Danke

    
Gavin 24.09.2009, 05:45
quelle

5 Antworten

20

Es ist eigentlich ziemlich genau so wie das Schreiben einer typischen Eigenschaft:

%Vor%

Der einzige Unterschied ist, dass wir das Schlüsselwort "this" verwenden, anstatt ihm einen richtigen Namen zu geben:

%Vor%     
Rex M 24.09.2009, 05:49
quelle
6

Aus der MSDN-Dokumentation :

%Vor%     
Daniel Pryden 24.09.2009 05:49
quelle
4

Indexer in C # sind Eigenschaften mit dem Namen this . Hier ist ein Beispiel ...

%Vor%     
Yuliy 24.09.2009 05:51
quelle
1

Nachfolgend ist meine geringfügige Variation zu MSDN-Beispiel:

%Vor%

Personen Klasse:

%Vor%

Verwendung:

%Vor%     
bhole 07.02.2011 22:37
quelle
0

Wenn Sie Ihre Klasse zum Steuern des ASP.NET-Sitzungsstatus verwenden möchten, sollten Sie Folgendes implementieren: SessionStateStoreProviderBase Klasse und IRequiresSessionState Schnittstelle. Sie können dann Ihren Sitzungsanbieter verwenden, indem Sie dies zum Abschnitt system.web Ihrer Datei web.config hinzufügen:

%Vor%

Ich habe diese Technik zum Erstellen von komprimierten / verschlüsselten Sitzungszuständen gesehen.

    
Jesse C. Slicer 24.09.2009 14:12
quelle

Tags und Links