我已經構建了一個簡單的平面dotnet核心MVC應用程序,我希望在Linux上看到它。它使用EF從mysql表中拉出幾條記錄並將它們顯示在視圖中。這一切都建立並運行在我的主機上(Win10),但不會在我已經啓動測試的Ubuntu虛擬機上運行。在Ubuntu Linux上使用asp.net MVC和EF的dotnet核心MySQL錯誤NU1001:無法恢復MySql.Data.EntityFrameworkCore
我做了「dotnet恢復」之後,出現以下「dotnet build」錯誤或「DOTNET運行」:
項目CoreCrossPlatformFlat(.NETCoreApp,版本= V1.0)將 編譯因爲自去年 構建編譯CoreCrossPlatformFlat的CLI的版本或位數改變 .NETCoreApp,版本= v1.0 /opt/dotnet/corecrossplatform/src/CoreCrossPlatformFlat/project.json(25,52): 錯誤NU1001:依賴項MySql.Data.EntityFrameworkCore> = 7.0.4-IR-191無法解析。
編譯失敗。 0警告(S)1個錯誤
FYI:這裏是 「DOTNET --info」 報道:
.NET命令行工具(1.0.0-preview2-003121)
產品信息: 版本:1.0.0-preview2-003121 提交SHA-1散列:1e9d529bc5
運行環境: 操作系統名稱:Ubuntu的 OS版本:16.04 OS平臺:Linux RID:ubuntu.16.04-64
對於VM,我按照這些指示:
https://www.microsoft.com/net/core#ubuntu
的project.json看起來像這樣:
{
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.0",
"type": "platform"
},
"Microsoft.AspNetCore.Diagnostics": "1.0.0",
"Microsoft.AspNetCore.Mvc": "1.0.0",
"Microsoft.AspNetCore.Razor.Tools": {
"version": "1.0.0-preview2-final",
"type": "build"
},
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
"Microsoft.AspNetCore.StaticFiles": "1.0.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
"Microsoft.Extensions.Configuration.Json": "1.0.0",
"Microsoft.Extensions.Logging": "1.0.0",
"Microsoft.Extensions.Logging.Console": "1.0.0",
"Microsoft.Extensions.Logging.Debug": "1.0.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0",
"Microsoft.EntityFrameworkCore": "1.0.0",
"MySql.Data.Core": "7.0.4-IR-191",
"MySql.Data.EntityFrameworkCore": "7.0.4-IR-191"
},
"tools": {
"BundlerMinifier.Core": "2.0.238",
"Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final",
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
},
"frameworks": {
"netcoreapp1.0": {
"imports": [
"dotnet5.6",
"portable-net45+win8"
]
}
},
"buildOptions": {
"emitEntryPoint": true,
"preserveCompilationContext": true
},
"runtimeOptions": {
"configProperties": {
"System.GC.Server": true
}
},
"publishOptions": {
"include": [
"wwwroot",
"Views",
"Areas/**/Views",
"appsettings.json",
"web.config"
]
},
"scripts": {
"prepublish": [ "bower install", "dotnet bundle" ],
"postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
}
}
下面是該解決方案的zip文件,如果有幫助的話: https://s3.amazonaws.com/kilonova-public/code/CoreCrossPlatformFlat.zip
你已經運行過'dotnet restore'嗎? –
@NateBarbettini - 對...抱歉,我沒有提到它。錯誤仍然相同。 –
也許值得注意的是:能夠使用MySql.Data.Core編寫一些在Ubuntu VM上成功運行的基本ADO.NET代碼。此時我不確定恢復EF軟件包是否存在問題,或者它只是沒有準備好用於Linux? –