爲什麼當我們調用AccountApiController.Register()方法時會發生這種情況?「創建模型時無法使用上下文」使用ASP.NET標識的例外
- 什麼是嘗試使用上下文?
- 試圖創建上下文的是什麼?
- 我們如何避免這種情況?
- 我們該如何調試?
「消息」:「發生錯誤」。,
「ExceptionMessage」:「上下文不能用於正在被創建的模型 而此異常可能如果上下文拋出使用 的OnModelCreating方法裏面,或者相同的上下文實例 由多個線程同時訪問。需要注意的是實例成員的DbContext和相關的類 不能保證是線程安全的 「,
「ExceptionType」: 「System.InvalidOperationException」,
「堆棧跟蹤」:」
在System.Web.Http.ApiController.d__1.MoveNext()
---從棧跟蹤的結尾以前的位置,其中的例外是在System.Runtime.CompilerServices.TaskAwaiter .HandleNonSuccessAndDebugger拋出
在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任務task)
通知(任務>任務)
在System.Web.Http.Dispatcher.HttpControllerDispatcher.d__0.MoveNext()」
確保你沒有使用相同的上下文對象不同的要求,並確保您OnModelCreating後發送請求解決它。你可以在方法結尾添加斷點。 –
我們如何確保不會對不同的請求使用相同的上下文對象?另外,由於我們沒有OnModelCreating方法,因此我不確定添加斷點是什麼意思。 –
我已經瞭解到ASP.NET身份使用工廠模式爲了獲得每個請求的UserManager的一個實例;這可能是一個問題,因爲我們的UserManager將數據存儲在我們的DbContext中。嗯。 –