dotnetcore / dotnetcore/FreeSql

能否扩展ifreesql接口的Transaction为TransactionAsync

Open
#2,278 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
4.4k
Forks
910
PR merge metrics
No merged PRs in 30d

Description

我看了源码 好像当前事务依赖线程Id 导致不能切换线程 为何不用asynclocal来管理事务对象 平滑的切换线程
是有什么已知问题吗

使用uow的话 在文档中明确说明在内部不能使用ifreesql,这不是强有力的约束
在编译期无法发现bug,

假设现在扩展接口 修改baseprovider之后 能否全面支持异步呢?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing the existing transaction handling that depends on the thread ID, then inspect the IFreeSql interface and BaseProvider mentioned in the issue. Evaluate whether an asynchronous TransactionAsync API and AsyncLocal-based transaction state can support thread switching without breaking unit-of-work behavior. Done means the supported async transaction semantics and affected documentation are clearly defined, with coverage for the relevant transaction paths.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
database
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.