Я новичок в C #, и я искал информацию о лучших методах разработки приложений на C #.
Я хочу иметь настройку приложения, которая определяет, куда приложение будет записывать свои файлы журналов и отчеты. Я хочу, чтобы по умолчанию это %USERPROFILE%\Documents\<Vendor>\<Tool>
, так как эти файлы созданы для того, чтобы пользователь мог на самом деле просматривать и распоряжаться ими на досуге. Но если пользователь хочет, чтобы файлы были записаны в другом месте, я хочу сохранить их предпочтения.
Мои исследования показывают, что:
- Обычно не рекомендуется напрямую использовать переменные окружения. Вместо этого рекомендуется использовать метод Environment.GetFolderPath и перечисление Environment.SpecialFolders , чтобы получить доступ к специальным расположениям в Windows, таким как профиль пользователя.
- Но рекомендуется использовать Пользовательские настройки приложения .NET для сохранения настроек из одного сеанса в другой.
Есть ли какой-нибудь хороший способ примирить передовую практику 1 и передовую практику 2? Возможно ли на самом деле сохранить это расположение по умолчанию в настройках приложения совместимым способом, не ссылаясь на переменную среды% USERPROFILE%?
Смежный вопрос:
Предположим, я сохраняю %USERPROFILE%\Documents\<vendor>\<tool>
в качестве значения по умолчанию для настройки. Я хочу, чтобы значение параметра было привязано к текстовому полю в главной форме приложения (с помощью кнопки «Обзор», чтобы выбрать новый путь). Как я могу привязать параметр к текстовому полю таким образом, чтобы% USERPROFILE% был преобразован в обычный путь файловой системы (например, C:\Users\<username>\Documents\<vendor>\<tool>
) для целей отображения пользователю?