Ich habe einen Server mit Ubuntu 16.04 auf es installiert ist, ist hier eine lsb_release -a
Ausgabe:ASP.NET Core 2.0 WebAPI Anwendung nicht auf Ubuntu arbeiten 16.04
Ich versuche, meine ASP.NET zu erhalten Core 2.0 App (Webapi) läuft auf diesem Server. Mein Ziel ist es, einen Kestrel-Server auf einem Port 8000 laufen zu lassen, damit ich ihn von jedem entfernten Host (nicht nur von localhost) anrufen kann.
Lassen Sie mich Ihnen zeigen, was ich bisher getan habe:
ich die .net Kern installiert:
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod xenial main" > /etc/apt/sources.list.d/dotnetdev.list'
ich eine App erstellt:
Dotnet neue WebAPI -n webapi Ich habe hier einen Fehler, der besagt, dass die Sperre in einem Verzeichnis/tmp/... nicht erhalten werden kann, aber der Befehl dotnet new ist erfolgreich. Ich dachte, dass es eine Art von Erlaubnisproblem sein muss, also habe ich einen
sudo dotnet restore
Befehl innerhalb des Projektverzeichnisses angewandt und es ging alles gut.- Ich starte die Anwendung mit
dotnet run
und erhielt die NachrichtNow listening on http://localhost:5000
. - öffnete ich eine andere SSH-Sitzung und ausgeführt
curl -I http://localhost:5000/api/values/
aber die Antwort ist 404:
Ich versuchte app.UseMvc()
in Startup.cs zu app.UseMvcWithDefaultRoute()
ändern, aber es hat nicht geholfen - ich kann immer noch nicht mein Zugang WerteController.
Wie Sie sehen können, kann ich keine Anwendung starten. Was vermisse ich?
Versuchen Sie den Code aus Controller und startup.cs – Liero