friflo / Friflo.Json.Fliox

C# ECS + ORM
https://github.com/friflo/Friflo.Engine.ECS
GNU Lesser General Public License v3.0
165 stars 12 forks source link

notes for version: v0.30.0 - add transaction support for SQL dataabases #25

Closed friflo closed 8 months ago

friflo commented 1 year ago

New feature

Add Transaction interface to FlioxClient. Will become relevant when publishing SQL Providers: SQLite, MySQL, MariaDB, Postgres & SQL Server.

        /// <summary>Begin a transaction containing all subsequent <see cref="SyncTask"/>'s.<br/>
        /// The transaction ends by either calling <see cref="FlioxClient.SyncTasks"/> or explicit by
        /// <see cref="TransactionCommit"/> / <see cref="TransactionRollback"/></summary>
        public CommandTask<TransactionResult>   TransactionBegin()          => send.Command<TransactionResult>();

        /// <summary>Commit a transaction started previously with <see cref="TransactionBegin"/></summary>
        public CommandTask<TransactionResult>   TransactionCommit()         => send.Command<TransactionResult>();

        /// <summary>Rollback a transaction started previously with <see cref="TransactionBegin"/></summary>
        public CommandTask<TransactionResult>   TransactionRollback()       => send.Command<TransactionResult>();