Bonsoir à tous,
Ca fait maintenant une heure et demi que je recherche une solution à mon problème et je pête un câble, alors je m'adresse ici en espérant que quelqu'un a une solution à mon problème.
J'ai créé un webservice WCF sur lequel on peut appeler plusieurs méthodes. Grosso modo, j'aimerai pouvoir sauvegarder l'état d'une variable privée. Prenons cet exemple :
J'aimerai que quand on appelle la méthode addHardware, la liste se remplisse au fur et à mesure et que quand on récupère la liste via getHardwareList, je récupère ma liste comme elle est.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public class Toto : IToto { private List<Hardware> hwList = new List<Hardware>(); public void addHardware(Hardware hw) { hwList.Add(hw); } public void getHardwareList(out List<Hardware> list) { list = hwList; } }
Le problème est que ma liste est réinitialisée à chaque appel d'une méthode, comme si l'InstanceContextMode était bloqué sur PerCall.
J'ai trouvé plein de tutos qui parlent de PerSession mais y a des merdes avec le wsHttpBinding.
Ma question est donc la suivante : est-il possible de garder l'état de cette liste sans la sauvegarder à chaque appel dans une base de données et sans la renvoyer en serialisée dans les données XML.
On suppose que chaque instance du webservice déclarée sur chaque client est indépendante. Autrmenet dit, le ClientA aura sa propre liste de l'instanceA et le clientB aura sa propre liste de l'instanceB.
Quelqu'un pour me venir en aide ?
Merci
Partager