我已经构建了一个简单,扁平的dotnet核心MVC应用程序,我希望看到它在Linux上运行 . 它使用EF从mysql表中提取一些记录并在视图中显示它们 . 这一切都在我的主机(Win10)上构建和运行,但不会在Ubuntu VM中旋转以进行测试
在我执行“dotnet restore”后,“dotnet build”或“dotnet run”出现以下错误:
项目CoreCrossPlatformFlat(.NETCoreApp,Version = v1.0)将被编译,因为自上次构建以来,CLI的版本或位数发生了变化,为.NETCoreApp编译CoreCrossPlatformFlat,版本= v1.0 / opt / dotnet / corecrossplatform / src / CoreCrossPlatformFlat /project.json(25,52):错误NU1001:无法解析依赖项MySql.Data.EntityFrameworkCore> = 7.0.4-IR-191 . 编译失败 . 0警告1错误
仅供参考:这是“dotnet --info”报道的内容:
.NET命令行工具(1.0.0-preview2-003121)产品信息:版本:1.0.0-preview2-003121提交SHA-1哈希:1e9d529bc5运行环境:操作系统名称:ubuntu操作系统版本:16.04操作系统平台:Linux RID :ubuntu.16.04-x64
对于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%" ]
}
}
如果有帮助,这里是解决方案的拉链:https://s3.amazonaws.com/kilonova-public/code/CoreCrossPlatformFlat.zip
1 回答
今天遇到了同样的问题 . 请尝试删除项目文件夹中除project.json文件和所有.cs文件之外的所有文件和文件夹 . 然后dotnet恢复和dotnet运行 . 这个对我有用 . :)