2017-02-21 14 views
2

私は、dnx-mono NuGetパッケージの助けを借りて、Linux上で正常に動作していたASP.NET Webアプリケーションを持っています。私はdnx publishツールを使用して、それを公開し、コマンドでそれを実行するために使用:DNXは廃止されましたのでLinuxでASP.NET Core Webアプリケーションを実行するにはどうすればよいですか?

/opt/dnx-mono.1.0.0-rc1-update1/bin/dnx --appbase /path/to/json Microsoft.Dnx.ApplicationHost kestrel 

が、私はそれを取り除くと.NETのコアに移行したいが、それはLinux上でもう動作しません。 。

重要::.NETコアではまだ利用できないライブラリ(MySQL.Dataなど)を使用しているため、アプリケーション.NETコアアプリケーションを作成できません。したがって、私は(.NET Frameworkのに気づく)ASP.NETコアWebアプリケーションを作成します。

enter image description here 私はアプリケーション全体を移行し、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 Frameworkではなく.NETコア用のASP.NET Webアプリケーションに焦点を当てているので、グーグルリングは役に立たなかった。 LinuxのバージョンはDebian 8、dotnetコマンドはthisのガイドに従って入手しました。どんな手掛かり?

+1

'dotnet restore'その後、' dotnet run'はどのプラットフォームでも必要ですが、.Net Coreアプリである必要があります。 – DavidG

答えて

2

完全な.NetフレームワークをターゲットとするLinux上でアプリケーションを実行することはできません。コアのみでなければなりません。

+0

1)Monoはフル.NETフレームワークを対象とするASP.NETコアWebアプリケーションをサポートしませんか? 2)私がうまく使用した "dnx-mono"のようなNuGetパッケージを作る予定はありませんか? –

+0

@MiljenMikicマイクロソフトはMonoを使用して.NETコアをブートストラップしますが、現在.NET Coreは完全に独立しています。 .NET Core SDK 1.0が来ている(3月7日)ように、DNX名のものはすべて削除してください。これは未来です。 –

+0

@LexLi私は本当にDNX *のものを取り除きたいと思っています。そのため、まず質問を投稿しました。しかし、必要な条件は、私のアプリをまだ動作させ続けることです。現時点ではそうではありません。 –

関連する問題