![](/img/trans.png)
[英]Why does UserManager.GetUserAsync return null when using JWT?
[英]Using ExecuteInTransaction with UserManager
我們正在實施EnableRetryOnFailure
但正如在https://docs.microsoft.com/en-us/ef/core/miscellaneous/connection-resiliency上所討論的那樣,這對於用戶定義的事務來說是開箱即用的。
上述鏈接(選項 3 和 4)的建議之一是使用ExecutionStrategy.ExecuteInTransaction
,並使用acceptAllChangesOnSuccess: false
調用SaveChanges
。
這是必要的,以便在 SaveChanges 成功但事務失敗時可以重試事務。
我們遇到的問題是我們在事務中包含了UserManager
方法,這些方法將在內部調用上下文中的SaveChanges
。
當我們無法將UserManager
更改為使用acceptAllChangesOnSuccess: false
時,我們該怎么做?
使用 UserManager.CreateUser 方法添加用戶將調用內部 UserStore 上的 SaveChanges 方法。 UserStore 類有一個公共屬性 AutoSaveChanges,它指示是否調用 SaveChanges 方法。 通過將 AutoSaveChanges 屬性設置為 false,然后調用 UserManager.CreateUser 方法,將不會調用 SaveChanges 方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.