2016-09-30 22 views
1

某些實體框架核心CLI命令接受environment參數。例如dotnet ef migrations list --environment <env_name>如何使用傳遞給EntityFramework Core CLI的環境參數

我繼續遷移的程序集與數據實體程序集是分開的,因此我不得不從IDbContextFactory派生。

這裏來了我的問題:有沒有辦法讓環境參數從我的DbContextFactory類中傳遞給CLI?我需要這個來應用特定環境的連接字符串。

在此先感謝。

回答

5

愚蠢的我,環視一天後,我注意到,IDbContextFactory接口Create方法有DbContextFactoryOptions類型的參數,這反過來又EnvironmentName財產,這似乎是一個傳遞給CLI命令。

案件關閉。

+0

儘管嚴重缺乏文檔,使用EF Core的智能人士的榮譽!希望這會得到[aspnet/EntityFramework.Docs#204](https://github.com/aspnet/EntityFramework.Docs/issues/204)的覆蓋。 – bricelam

0

ASP.NET核心和EF核心2.0.1

爲了授予提升權限,同時保持應用較低的權限,創建了兩個SQL用戶遷移實體的變化。

應用程序的連接信息存儲在appsettings.json中。用於EF CLI的連接信息存儲在appsettings.<ENVIRONMENT_NAME>.json中。兩者都使用相同的ConnectionStrings鍵。

對於dotnet ef成功執行,在嘗試更新數據庫之前設置ASPNETCORE_ENVIRONMENT

set ASPNETCORE_ENVIRONMENT=<ENVIRONMENT_NAME> 
dotnet ef database update 
相關問題