CQRS_ES.Framework.SqlEventStore.UpdateSequence C# (CSharp) Метод

UpdateSequence() приватный Метод

private UpdateSequence ( object streamId, long expectedInitialVersion, long nextVersion, SqlCeConnection connection ) : void
streamId object
expectedInitialVersion long
nextVersion long
connection SqlCeConnection
Результат void
        private void UpdateSequence(object streamId, long expectedInitialVersion, long nextVersion, SqlCeConnection connection)
        {
            const string commandText =
                "UPDATE Streams SET CurrentSequence = @CurrentSequence WHERE StreamId = @StreamId AND CurrentSequence = @OriginalSequence;";
            using (var command = new SqlCeCommand(commandText, connection))
            {
                command.Parameters.AddWithValue("StreamId", streamId.ToString());
                command.Parameters.AddWithValue("CurrentSequence", nextVersion);
                command.Parameters.AddWithValue("OriginalSequence", expectedInitialVersion);

                var rows = command.ExecuteNonQuery();
                if(rows != 1)
                    throw new ConcurrencyException();
            }
        }