Neuling für das ganze ASP.Net Rätsel !!Wiederverwendung eines Datenobjektmodells über mehrere Anfragen hinweg
Also habe ich eine Reihe von Web-API (Aktionen) in einer Steuerung, die nacheinander vom Client aufgerufen werden. Alle APIs hängen von einem Datenmodellobjekt ab, das aus der Datenbank abgerufen wird. Im Moment habe ich eine DAO-Schicht, die diese Daten holt und sie transparent zwischenspeichert. Es gibt also kein unmittelbares Problem, da es für jeden API-Aufruf keinen Hin- und Rückweg zur Datenbank gibt. Die DAO-Schicht wird jedoch von einem anderen Team verwaltet und gibt keine Garantie dafür, dass der Cache weiterhin existiert oder sich das Verhalten nicht ändert.
Nun würden sich die Eigenschaften oder Attribute des Modellobjekts ändern, aber nicht zu oft. Wenn ich die API-Aufrufe, die nacheinander von einem Client ausgeführt werden, als ein Bündel referenziere, kann ich sicher annehmen, dass das Bündel diese Daten tatsächlich einmal abfragen und verwenden kann, ohne sich um Wertänderungen kümmern zu müssen. Wie kann ich das erreichen? Gibt es irgendwo in der ASP.Net-Welt ein Entwurfsmuster, das ich verwenden kann? Ich möchte diesen Wert in einem periodischen Intervall abrufen und aktualisieren, falls einer der API-Aufrufe fehlschlägt und anzeigt, dass sich die zugrunde liegenden Werte geändert haben.
Sie müssen [Sitzungsstatus] (https://msdn.microsoft.com/en-us/library/ms178581.aspx) für jedes "Bundle" erstellen. Das bedeutet, Staatenlosigkeit zu vermeiden (was Ihre Leistung beeinträchtigt) und Sie müssen definieren, wann eine Sitzung beginnt und wann sie endet, dh einen Weg finden, wie das Programm den Anfang und das Ende eines "Bündels" erkennt und erkennt (und ausschließt)) wenn während desselben Zeitraums Transaktionen von einem anderen Kunden eingehen. Erfordert der Dienst eine Authentifizierung? –
Ja, der Dienst benötigt Authentifizierung. Grundsätzlich werden alle API-Aufrufe mit einem Sitzungstoken authentifiziert – Dibzmania