Nej. Låse placeres kun for omfanget af en transaktion, som i en webapplikation slutter, når anmodningen slutter. Standardtypen for transaktionsisoleringstilstand er også Læs begået hvilket betyder, at læselåse frigives, så snart select-sætningen afsluttes. Hvis du læser og foretager redigeringer i den samme anmodning og transaktion, kan du placere en læse- og skrivelås på rækken ved hånden, hvilket ville forhindre andre transaktioner i at skrive til eller læse fra den række. Denne type samtidighedskontrol fungerer dog ikke godt i en webapplikation.
Dette ville ske, hvis [optimistisk samtidighed] blev brugt. I NHibernate fungerer optimistisk samtidighed ved at tilføje en versionsfelt . Gem/opdater kommandoer udsendes med den version, som opdateringen var baseret på. Hvis det afviger fra versionen i databasetabellen, opdateres ingen rækker, og NHibernate vil kaste.
Nej, låsen udløses i slutningen af anmodningen.
Samlet set er dit bedste bud at vælge optimistisk samtidighed med versionsfelter, der administreres af NHibernate.