2009-05-11 2 views
9

Ich versuche, einen Wert zu speichern/abzurufen, der in den Anwendungseinstellungen gespeichert ist. Von meiner Konsolenanwendung aus kann ich nicht auf den Namespace Properties.Setting zugreifen. Mein Websurfen hat ergeben, dass hierfür innerhalb einer Konsolenanwendung möglicherweise etwas mehr Arbeit erforderlich ist. Wie macht man das?Wie greife ich über eine Konsolenanwendung auf den Namespace Eigenschaften zu?

string test = Properties.Settings.Default.MyString; 

Vielen Dank!

Antwort

17

Standardmäßig gibt es in einer Konsolenanwendung keine Einstellungsdatei. Sie können jedoch eine hinzufügen, indem Sie im Solution Explorer mit der rechten Maustaste auf Ihr Projekt klicken, "Eigenschaften" auswählen und dann im sich öffnenden Fenster auf die Registerkarte "Einstellungen" klicken.

Es sollte ein Link sein, der sagt "Klicken Sie hier, um eine Standardeinstellungsdatei zu erstellen". Sobald das geschaffen ist, geht es zu den Rennen.

+0

die Registerkarte Einstellungen nicht ein „Klicken Sie hier eine Standard-Einstellungsdatei erstellen“ -Link. Aber ich kann Code anzeigen, der mich zu einer Datei settings.cs führt. Es gibt einige Event-Handler, die verdrahtet werden müssen. Kennt jemand ein gutes Beispiel dafür, dass dies getan wird? – Nick

+1

Hmm .... das ist seltsam. In welcher Version von Visual Studio sind Sie tätig? – womp

+0

MyProjectName.Settings1.Default.DatabaseConnectionString sollte Ihnen Zugriff auf die Einstellungsdatei geben. – barneymc

1

So .. Sobald ich meine Settings.settings-Datei in dem Projekt erstellt, das die Eigenschaft speichert, lief ich in das Problem, wie auf diese Eigenschaften von einem anderen Projekt in der gleichen Lösung zugreifen. Das Settings-Objekt ist versiegelt, so dass Sie einen kleinen Trick verwenden müssen, um auf die Eigenschaftswerte in einem anderen Projekt zuzugreifen. Ich fand meine Lösung hier:

http://blog.decarufel.net/2007/10/getting-access-to-settings-in-another.html

Grundsätzlich Sie einen Link-Datei in das Settings.Designer.cs Datei im Projekt erstellen, in dem Sie die Werte abzurufen versuchen.

Ich hoffe, dass dies jemand mit einem ähnlichen Problem hilft.

-Nick

2
  1. Stellen Sie sicher, den Namensraum der Klasse Sie verwenden die Standard-Namespace Ihres Projekts.

2.Then CNA Sie

string s = Properties.Settings.Default.THENAMEINSETTINGS; 

verwenden.

enter image description here

Verwandte Themen