lies Verbindungszeichenfolge außerhalb des Startvorgangs von appsetting.json in vNext

9

Ich habe eine Projektklasse (Nuget-Paket). Ich muss in einer statischen Klasse ohne Konstruktor meine Verbindungszeichenfolge zu MongoDB lesen.

Statische Klassenmethode:

%Vor%

Ich habe immer null ... Wie kann ich den Wert außerhalb der Startup.cs erhalten, ohne DI zu verwenden?

Es ist möglich?

In meinem alten Code könnte ich so etwas machen:

%Vor%

Danke !!

    
chemitaxis 14.12.2015, 14:11
quelle

4 Antworten

16

In Ihrem Start sollten Sie die Verbindungszeichenfolge in einer statischen Eigenschaft in Startup

speichern %Vor%

Dann sollten Sie von überall her darauf zugreifen können:

%Vor%     
armen.shimoon 15.12.2015, 07:22
quelle
20

1.ConnectionString in appsetting.json

  1. Erstellen einer Singleton-Instanz der Konfiguration in der Klasse Startup.cs

  1. Lesen von Werten aus der Konfigurationsinstanz mithilfe der Abhängigkeitsinjektion [Konstruktorinjektion]

  1. Schließlich Ausgabe

    
Saineshwar 01.12.2016 03:56
quelle
4

So etwas sollte funktionieren:

%Vor%

Text & Tabellen: Ссылка

    
brettkc 14.12.2015 14:59
quelle
0
  

Wie kann ich den Wert außerhalb der Startup.cs erhalten, ohne DI zu verwenden? Es ist möglich?

Ja, Sie können die Konfiguration ohne DI und in Ihrer gesamten Anwendung verwenden. Aber empfehlen wir, die Konfigurations-API nur beim Start zu verwenden und dann Optionen zu verwenden :

  

Erstellen Sie gut durchdachte Einstellungsobjekte, die bestimmten Funktionen innerhalb Ihrer Anwendung entsprechen und somit dem Schnittstellen-Trennprinzip (ISP) folgen (Klassen hängen nur von den Konfigurationseinstellungen ab, die sie verwenden)

Beispiel mit Konfigurations-API

appsettings.json:

%Vor%

Verwendung der Konfiguration:

%Vor%

Tutorial auf docs.asp.net - aber es ist ein bisschen veraltet.

>     
Stas Boyarincev 14.12.2015 14:58
quelle

Tags und Links