W mojej aplikacji C# mam niestandardową sekcję konfiguracji, aby określić, gdzie przechowywać i pobierać określone pliki. Jednak domyślna lokalizacja dla nich jest w katalogu C: \ ProgramData i mamy do niego dostęp za pomocąJak umieścić specjalny folder Windows w pliku konfiguracyjnym
Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
Jak mogę wstępnie wypełnić ten katalog w moim pliku konfiguracyjnego bez konieczności pisania z surowego ciąg? Może to być również inny folder specjalny w niektórych przypadkach.
Zasadniczo jest to element konfiguracji, która wygląda następująco:
<searchpath path="" priority="" isfullpath=""/>
Każdy z nich jest droga, aby szukać profile konfiguracyjne dla produktu jednak w ciągu różnych wersjach, że katalog został przeniesiony wokół, ale dla zgodności wstecznej nadal muszę przeszukiwać starsze ścieżki, jeśli nie mogę znaleźć ich w nowszych ścieżkach.
Na przykład muszę wyszukać w katalogu instalacji produktu, a następnie w katalogu ProgramData, ponieważ nasza najnowsza wersja przeniosła go do bieżącego katalogu instalacyjnego produktów, ale nasza starsza wersja zapisywała go w katalogu ProgramData.
Mówisz, że wolisz pobrać wartość z pliku konfiguracyjnego, ale możliwe, że została ona przesłonięta (tj. Ustawiona ręcznie)? –
Czy chcesz zapisać różne ścieżki 'SpecialFolder' lub niestandardowe lub kombinacje' SpecialFolder' i ścieżkę zdefiniowaną przez użytkownika? – hangy
Prawidłowo. W tej chwili po prostu mam je zakodowane w klasie, ale jestem zmęczony koniecznością wejścia i zmiany kodu za każdym razem. – twreid