2015-12-14 18 views

Antwort

0

Ich bin mir nicht sicher, was mit System.ConfigurationManager.AppSettings [MSDN] falsch ist, wie es funktioniert immer noch in 4,5 & 4,6

Aber ich denke, was Sie fragen nach ist System.Configuration.AppSettingsReader.GetValue() [MSDN]

+0

Unter 'References', fügte ich' System.Configuration (1.0.0) 'zu DNX 4.5.1. Allerdings bekomme ich immer noch "Der Typ oder Namespace 'Konfiguration' existiert nicht im Namespace 'System' (fehlt Ihnen eine Assembly oder Referenz?)" –

7

hinzufügen json Datei zu Ihrem Projekt Wurzel Regie: config.json

{ 
    "AppSettings": { 
     "TestKey" : "TestValue" 
    } 
} 

erstellen Sie ein neues class für Config Deserialisierung:

public class AppSettings 
{ 
    public string TestKey { get; set; } 
} 

In Startup.cs:

public Startup(IHostingEnvironment env, IApplicationEnvironment appEnv) 
{ 
     // Setup configuration sources. 
     var builder = new ConfigurationBuilder() 
       .SetBasePath(appEnv.ApplicationBasePath) 
       .AddJsonFile("config.json") 
       .AddJsonFile($"config.{env.EnvironmentName}.json", true) 
       .AddEnvironmentVariables(); 
     Configuration = builder.Build(); 
} 

public IConfigurationRoot Configuration { get; set; } 

public void ConfigureServices(IServiceCollection services) 
{ 
     var builder = services.AddMvc(); 

     services.Configure<AppSettings>(Configuration.GetSection("AppSettings")); 
} 

die Optionen in Ihrem controller Get:

public HomeController(IOptions<AppSettings> settings) 
{ 
    var value = settings.Value.TestKey; 
} 
0

Sie können Werte mit der [ "-Einstellung-key"] Syntax:

IConfiguration _configuration; 
... 
var setting = _configuration["SomeKey"]; 

Oder Sie können analysieren Abschnitt config einige benutzerdefinierte Objekt wie folgt:

IConfiguration configuration; 
... 
var myCustomObject = configuration.GetSection("SomeSection").Get<MyCustomObject>(); 

beachten - in zweiter Ansatz sollten Sie die folgenden MS Nugget Pakete verweisen:

  1. Microsoft.Extensions.Configuration
  2. Microsoft.Extensions.Configuration .Builder
  3. Microsoft.Extensions.Configuration.Json
Verwandte Themen