den 2016-01-30 20:23, skrev Геннадий Забула: > On 30 January 2016 at 12:44, Kjell Rilbe <kj...@rilbe.se> wrote: >> Hi, >> >> Using a framework that's "database agnostic", I am able to choose a >> value for transaction isolation level using the >> System.Data.IsolationLevel enum. I can't find a way to enter a >> FbTransationOptions struct or FbTransactionBehavior value. >> >> Using System.Data.IsolationLevel, it seems I get transactions with >> behavior ReadCommitted + NoRecVersion. I would like to have RecVersion >> instead of NoRecVersion. >> >> Any suggestions? >> >> > I'm using custom extension function, that takes DbContext and > depending on Database.Connection type creates manually tuned > transaction for FB case. > https://gist.github.com/zabulus/1e46010094e1b6678729 > Here is snippet
Nice, but I assume this is a function that you manually call in your own code, instead of the regular DbConnection.BeginTransaction? The problem is that the framework I'm using does it all under the hood: opens connection, starts and ends transactions and executes SQL. I add the DbConnection component I need to my form, in my case an FbConnection, and configure my framework's persistence handler to use that connection. The persistence handler has a lot of settings for the SQL connection, but for fetch and write transaction mode it uses the standard System.Data.IsolationLevel enum type, so there's no way to configure FireBird specific transaction options. What I need is some way to hook into the FbConnection's call to start a transaction, or "globally" configure it to a specific transaction option/mode/isolation level, either overriding the System.Data.IsolationLevel that the framework's persitence handler passes in, or map it in a different way than apparently is standard for the Firebird .Net provider. I.e. map ReadCommitted to ReadCommitted + RecVersion + NoWait rather than ReadCommitted + NoRecVersion + NoWait. Possible? Inherit from FbCOnnection and override BeginTransaction and use that (derived) component in place of FbConnection? Kjell -- --------------------------------------------------------------------------- Kjell Rilbe <kj...@rilbe.se> Telefon: 0733-44 24 64 (+46 733 442464) --------------------------------------------------------------------------- "If there's a price for bein' me, that's one I'll have to pay" Aaron Tippin --------------------------------------------------------------------------- ------------------------------------------------------------------------------ Site24x7 APM Insight: Get Deep Visibility into Application Performance APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month Monitor end-to-end web transactions and take corrective actions now Troubleshoot faster and improve end-user experience. Signup Now! http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 _______________________________________________ Firebird-net-provider mailing list Firebird-net-provider@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/firebird-net-provider