我有一个在dnx-mono NuGet包的帮助下在Linux上成功运行的ASP.NET Web应用程序。我曾经使用dnx publish
工具发布它并使用以下命令运行它:
/opt/dnx-mono.1.0.0-rc1-update1/bin/dnx --appbase /path/to/json Microsoft.Dnx.ApplicationHost kestrel
由于dnx已经过时,我想摆脱它并迁移到.NET Core,但它在Linux上不再起作用。
重要:我无法创建我的应用程序.NET Core应用程序,因为它使用了一些仍然不适用于.NET Core的库(如MySQL.Data)。因此,我创建了ASP.NET核心Web应用程序(通知 .NET Framework ):
我迁移了整个应用程序并在Windows上成功运行它,但我的目标是Linux。不再有dnx publish
,没问题 - 有dotnet publish
效果很好并且会生成二进制文件。现在怎么办? Dnx-mono软件包没有" dotnet-something"继承人,并使用已发布二进制文件的dotnet
命令产生了我无法解决的错误(The library 'libhostpolicy.so' required to execute the application was not found
),但我认为我甚至不应该使用dotnet
命令独立的二进制文件。谷歌搜索没有帮助,因为大多数教程都围绕.NET Core的ASP.NET Web应用程序而不是.NET Framework。 Linux版本是Debian 8,dotnet
命令是通过this指南获得的。任何线索?
答案 0 :(得分:2)
您无法在Linux上运行针对完整.Net Framework的应用程序,它必须只是Core。