實體框架核心:如何從DbContext獲取連接?

.net-core entity-framework-core

我正在嘗試使用MySQL Connector的新實體框架核心。

我可以獲得一個有效的DbContext並寫入數據庫,所以一切都已正確設置。

我需要從DbContext獲取Connection ,因為我必須在應用程序中使用try語句中的connection.Open()進行try 。如果沒有有效連接,控制台應用程序應嘗試啟動MySQL服務器並重試。

如何從DbContext獲取Connection

在EF6之前通過context.Connection 。在EF6之後通過context.Database.Connection

似乎最新的東西也已從EFCore中刪除了。

一般承認的答案

Microsoft.EntityFrameworkCore.Relationalhttps://www.nuget.org/packages/Microsoft.EntityFrameworkCore.Relational/ )包為此提供了擴展方法 - 您可以使用dbContext.Database.OpenConnection()dbContext.Database.GetDbConnection()獲取DbConnection對象。

注意:如果安裝了Microsoft.EntityFrameworkCore.SqlServer則不必顯式安裝此軟件包



Related

許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因