今天使用了一下EF Core的Code First,進行數據庫遷移的的時候報錯了:數據庫
The specified framework version '2.1' could not be parsed框架
解決方法:在DbContext的csporj工程文件裏指定一下運行時框架3d
<RuntimeFrameworkVersion>2.1.6</RuntimeFrameworkVersion>blog
添加完成後再次運行遷移指令:dotnet ef migrations add <記錄名>繼承
結果又爆出了新的錯誤接口
Unable to create an object of type 'EFDbContext'. Add an implementation of 'IDesignTimeDbContextFactory<EFDbContext>' to the project, or see https://go.microsoft.com/fwlink/?linkid=851728 for additional patterns supported at design time.ci
出現這種錯誤是由於Dbcontext沒有在Web項目裏面,因此他找不到連接字符串,沒辦法實例化DbContext字符串
解決方案:咱們在Dbcontext的同級目錄新建一個類DesignTimeDbContextFactoryget
讓這個類繼承IDesignTimeDbContextFactory接口it
寫完後再次執行遷移指令,發現遷移成功
出現這種問題,我我的認爲應該是個人DbContext沒有建到Web項目下的緣由,我以爲若是引入一下Nuget的Asp.NETMVC包應該也能解決問題,不過我就不去試了哈哈哈哈哈