2017-02-21 6 views
2

У меня есть веб-приложение ASP.NET, которое было успешно запущено на Linux с помощью пакета NuGet dnx-mono. Я использовал, чтобы опубликовать его с помощью инструмента dnx publish и запустить его с помощью команды:Как запустить ASP.NET Core Web-приложение в Linux?

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

С DNX устарела, я хочу, чтобы избавиться от него и перейти на .NET Ядра, но это больше не работает на Linux ,

Важное замечание: Я не могу использовать приложение .NET Core, потому что он использует некоторые библиотеки (такие как MySQL.Data), которые до сих пор недоступны для .NET Core. Поэтому я создаю ASP.NET Core, веб-приложение (уведомление .NET Framework):

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 с автономным двоичные файлы. Googling не помогло, так как большинство руководств ориентированы на веб-приложения ASP.NET для .NET Core, а не на .NET Framework. Версия Linux - это команда Debian 8, dotnet была получена следующим руководством this. Любая подсказка?

+1

'dotnet restore', то' dotnet run' должно быть все, что вам нужно на любой платформе, но это должно быть приложение .Net Core. – DavidG

ответ

2

Вы не можете запускать приложение в Linux, которое предназначено для полной. Net Framework, оно должно быть только Core.

+0

1) Моно не собирается поддерживать основные веб-приложения ASP.NET, нацеленные на полную платформу .NET? 2) Нет планов от MS, чтобы сделать пакеты NuGet, такие как «dnx-mono», которые я успешно использовал? –

+0

@MiljenMikic Microsoft использует Mono для загрузки .NET Core, но теперь .NET Core полностью работает самостоятельно. Пожалуйста, бросьте что-нибудь с именами DNX, так как сейчас идет .NET Core SDK 1.0 (7 марта), и это будущее. –

+0

@LexLi Я действительно хочу избавиться от материала DNX *, поэтому я поставил вопрос в первую очередь. Но необходимым условием является сохранение работоспособности моих приложений, чего сейчас нет. –