2016-12-07 1 views
4

Hier ist mein Fehler:Ubuntu Dotnet Kern Benutzer Geheimnisse Fehler

Unhandled Exception: System.ArgumentNullException: Value cannot be null. 
Parameter name: paths 
    at System.IO.Path.Combine(String[] paths) 
    at Microsoft.Extensions.Configuration.UserSecrets.PathHelper.GetSecretsPathFromSecretsId(String userSecretsId) 
    at Microsoft.Extensions.Configuration.UserSecrets.PathHelper.GetSecretsPath(IFileProvider provider) 
    at Microsoft.Extensions.Configuration.ConfigurationExtensions.AddUserSecrets(IConfigurationBuilder configuration) 
    at WebApplication.Startup..ctor(IHostingEnvironment env) in /root/hackerspulse/Startup.cs:line 29 

Startup.cs Linie 29 ist dies:

builder.AddUserSecrets(); 

Weitere Code aus dieser Datei:

 public Startup(IHostingEnvironment env) 
     { 
      var builder = new ConfigurationBuilder() 
       .SetBasePath(env.ContentRootPath) 
       .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) 
       .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true); 



      //if (env.IsDevelopment()) 
      //{ 
       // For more details on using the user secret store see https://go.microsoft.com/fwlink/?LinkID=532709 
       builder.AddUserSecrets(); 
      //} 
      builder.AddEnvironmentVariables(); 

      Configuration = builder.Build(); 
     } 

Es läuft gut von der Befehlszeile, aber wenn ich versuche, es vom Vorgesetzten zu starten, bekomme ich diesen Fehler :(Bitte helfen.

+0

lernte ich eine Arbeit um: Nicht Geheimnisse der Benutzer verwenden und appsettings.json Datei statt mit ... Art schlechte Arbeit um, aber funktioniert –

+0

Haben Sie diesen Fehler haben mit einer veröffentlichten Anwendung oder Sie laufen von der Projekt? –

+0

@MikhailZhuravlev Run aus dem Projekt ist in Ordnung, veröffentlichte App mit Supervisor-Befehl =/usr/bin/dotnet /var/www/jademgr/jademgr.dll erhält Fehler –

Antwort

-1

Secret Manager ist nur für Entwicklungszeit. Bitte nicht in Produktionsumgebung verwenden.

https://docs.microsoft.com/en-us/aspnet/core/security/app-secrets

+0

Nur weil es auf einem Entwicklungsserver ist, bedeutet es nicht unbedingt, dass Ist die Produktion, könnte es eine QA/Testumgebung sein, ich entwickle lokal auf einer Windows-Maschine, aber ich beabsichtige, in einer Linux-Umgebung aufgrund der reduzierten Kosten für die Verwaltung eines Linux-Host gegen einen Windows-Host zu hosten, was .NET Core ist dreht sich alles um Unterstützung plattformübergreifend. Kurz gesagt, mein aktueller Linux Server ist mein Entwicklungsserver – Chris

Verwandte Themen