Suchergebnisse

Suchergebnisse 1-7 von insgesamt 7.

  • Benutzer-Avatarbild

    Ich hab mich zum Glück immer um dieses Problem herum-laviert. Dennoch denke ich, einen Ansatz vorschlagen zu können, eine Variante des "Pessimistic Lock": Im Gui ist zunächstmal nix editierbar - nur angugge. Will User editieren, muss die Anwendung quasi in einen Editier-Modus gehen - Anbieten täte sich, wenn ein modales Form öffnet, und den zu editierenden Datensatz präsentiert. Gleichzeitig wird versucht, einen Timestamp in den Datensatz zu schreiben - das ist der Lock. "Lock holen" darf nur ge…

  • Benutzer-Avatarbild

    Zitat von GerhardW: „Gleichzeitig wird versucht, einen Timestamp in den Datensatz zu schreiben - das ist der Lock. "Lock holen" darf nur gehen, wenn der vorherige Timestamp abgelaufen ist. Der Timesstamp ist ja eine momentane Zeit. Was meinst du mit "abgelaufen", wenn der Wert wieder auf Date.MinValue gesetzt wird?“Ja, "Timestamp" ist nicht das richtige Wort. Ich meine "Ablaufzeit". Also wenn ich um 9:00 locke, schreibt der mw als Timestamp/Ablaufzeit 11:00 rein. Ab 11:00 ist der Lock also abgel…

  • Benutzer-Avatarbild

    Sonst könnte man auch bei dem Modell sich was einfallen lassen, dass da Zeitpunkte reingeschrieben werden, ab wann ein Lock verfallen ist. Hat auch seinen Reiz, weil man muss nicht in jeder Tabelle das Timestamp-Feld mitschleppen.

  • Benutzer-Avatarbild

    Jo, eine statische Klasse LockManager. Und eine Lock-Methode, die ein IDisposable LockObjekt zurückgibt. Wenn du einen Datensatz editieren willst:VB.NET-Quellcode (3 Zeilen)myDataRow kennt ja ihre DataTable - und damit wären ja alle Informationen gegeben, um einen Lock zu holen. Kann man auf die Spitze treiben durch eine DataRow-Extension-Method - dann kommts so raus:VB.NET-Quellcode (3 Zeilen)Zu bedenken ist auch, dass du auch sicherstellen musst, dass ParentRows nicht gelöscht werden, während …

  • Benutzer-Avatarbild

    Zitat von GerhardW: „Oder meinst du eine Klasse (LockObject) mit den Eigenschaften des Lock Zustandes, welcher ein IDisposable beinhaltet?“fast. Die Eigenschaften des LockObjektes beinhalten kein IDisposable - dassis semantisch Unfug. Bei Interfaces gibts nur zwei Möglichkeiten:- Eine Klasse implementiert ein Interface - Ein anderes Interface beerbt ein Interface Ich meine ersteres: Die LockObject-Klasse soll IDisposable implementieren. Die DataRow.Lock-Extension-Methode soll ein LockObject erst…

  • Benutzer-Avatarbild

    Zitat von GerhardW: „ist das so gemeint?“Ja, genau. Und jetzt die Shared Function Lock() in eine Extension umzumodeln ist ja nur ein Zucken. Sie muss dann aber in einem Modul angesiedelt sein - nicht in einer Klasse.

  • Benutzer-Avatarbild

    Puh - da müsste ich MySql installieren, und der zip sieht mir auch nicht aus, als sei das eine lauffähige Solution. Also du wünschst dir, dass jemand - MySql installiert - eine Datenbank aufsetzt - eine Anwendung schreibt, mit Zugriff auf diese DB - deine Lock-Mechanismen da korrekt einfrickelt - mit mehreren Instanzen testet Jo - da werden sich die Leuts drum reissen.