2009-05-11 12 views
9

Próbuję zapisać/pobrać wartość, która jest przechowywana w ustawieniach aplikacji. Z poziomu mojej aplikacji konsoli nie mogę uzyskać dostępu do przestrzeni nazw Properties.Setting. Moje surfowanie po Internecie ujawniło, że do wykonania tej czynności może być potrzebne trochę więcej pracy z poziomu aplikacji Console. Jak to zrobić?Jak uzyskać dostęp do przestrzeni nazw Właściwości z poziomu aplikacji konsoli?

string test = Properties.Settings.Default.MyString; 

Dzięki!

Odpowiedz

17

Domyślnie w aplikacji Console nie ma pliku ustawień. Można go jednak dodać, klikając prawym przyciskiem myszy projekt w eksploratorze rozwiązań, wybierając opcję "Właściwości", a następnie w wyświetlonym oknie kliknij kartę "Ustawienia".

Powinien być link z informacją "Kliknij tutaj, aby utworzyć domyślny plik ustawień". Po stworzeniu, jesteś na wyścigach.

+0

zakładka Ustawienia nie jest „Kliknij tutaj, aby utworzyć plik default settings” łącze. Ale mogę "Zobacz kod", który zabierze mnie do pliku settings.cs. Istnieje kilka programów obsługi zdarzeń, które należy podłączyć. Czy ktoś wie o dobrym przykładzie motyki? – Nick

+1

Hmm .... to dziwne. Jaką wersję programu Visual Studio używasz? – womp

+0

MyProjectName.Settings1.Default.DatabaseConnectionString powinien dawać dostęp do pliku ustawień. – barneymc

1

Po utworzeniu pliku Settings.settings w projekcie, który zapisuje właściwość, natrafiłem na problem dostępu do tych właściwości z innego projektu w tym samym rozwiązaniu. Obiekt ustawień jest zaplombowany, więc musisz użyć trochę sztuczek, aby uzyskać dostęp do wartości właściwości w innym projekcie. Znalazłam rozwiązanie tutaj:

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

Zasadniczo utworzyć plik Link do pliku Settings.Designer.cs w projekcie, w którym starają się odzyskać wartości.

Mam nadzieję, że pomoże to komuś z podobnym problemem.

-Nick

2
  1. Zapewnienie nazw klasy używasz jest domyślną przestrzeń nazw projektu.

2.then ty cna wykorzystać

string s = Properties.Settings.Default.THENAMEINSETTINGS; 

.

enter image description here