因此,我正在嘗試實現將我的 DBContext 類鏈接為依賴注入作為服務提供者的 IoC。在啟動我的 ASP Core 應用程序時出現此錯誤所以我的問題是;我做錯了什么,我嘗試用谷歌搜索它,但我無法真正找到解決方案。我試著問我校園里一些更優秀的程序員,但他們沒有專門使用 ASPnet Core,所以他們不知道這是因為我的演員表還是因為 ASPnet Core應用程序啟動異常:System.InvalidCastException:無法將類型為“Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceProviderEngineScope”的對象轉換為類型“Microsoft.Extensions.DependencyInjection.ServiceProvider”。在 F:\Developement\SpackkMVC\Spackk\Spackk\Startup.cs:line 44 中的 Spackk.Startup.Configure(IApplicationBuilder app, IHostingEnvironment env, IServiceProvider serviceProvider) --- 從拋出異常的先前位置開始的堆棧跟蹤結束 -- - 在 Microsoft.AspNetCore.Hosting.ConventionBasedStartup.Configure(IApplicationBuilder 應用程序)在 Microsoft.AspNetCore.HostFilteringStartupFilter.<>c__DisplayClass0_0.b__0(IApplicationBuilder 應用程序)在 Microsoft.AspNetCore.Hosting.Internal.AutoRequestServicesStartupFilter.<>c__DisplayClass0_0。b__0(IApplicationBuilder builder) 在 Microsoft.AspNetCore.Hosting.Internal.WebHost.BuildApplication() 暴擊:Microsoft.AspNetCore.Hosting.Internal.WebHost[6] 應用程序啟動異常 System.InvalidCastException:無法轉換類型為“Microsoft.Extensions”的對象.DependencyInjection.ServiceLookup.ServiceProviderEngineScope”鍵入“Microsoft.Extensions.DependencyInjection.ServiceProvider”。在 F:\Developement\SpackkMVC\Spackk\Spackk\Startup.cs:line 44 中的 Spackk.Startup.Configure(IApplicationBuilder app, IHostingEnvironment env, IServiceProvider serviceProvider) --- 從拋出異常的先前位置開始的堆棧跟蹤結束 -- - 在 Microsoft.AspNetCore.Hosting.ConventionBasedStartup.Configure(IApplicationBuilder 應用程序)在 Microsoft.AspNetCore.HostFilteringStartupFilter。<>
1 回答

翻閱古今
TA貢獻1780條經驗 獲得超5個贊
好吧,錯誤是明確的,并且在這一行上很明顯失敗了:
IocContainer.Provider = (ServiceProvider)serviceProvider;
serviceProvider
有一個 的實例ServiceProviderEngineScope
,它不能轉換為ServiceProvider
。僅僅因為它們都實現了IServiceProvider
并不意味著您可以從一個實現轉換為另一個實現。
然而,這整件事都是錯誤的。就像錯了。我希望我能更加強調這一點。想象一個 20 英尺的廣告牌,上面有閃爍的明亮霓虹紅色 LED。要么使用 DI 要么不使用,但是僅僅用一些依賴注入的對象填充一些靜態類然后期望能夠在任何你喜歡的地方使用它是完全錯誤的。
- 1 回答
- 0 關注
- 299 瀏覽
添加回答
舉報
0/150
提交
取消