Normaly я использую точно Ваш предложенный подход: Управляйте Случайным генератором. Инициализируйте его для теста с семенем по умолчанию (или замените его прокси, возвратив числа, которые соответствуют моим тестовым сценариям), таким образом, у меня есть детерминированное/тестируемое поведение.
Я бы сказал, что файл .config - это правильное место. Просто убедитесь, что используете область видимости Пользователь в файле Settings.settings, а не область приложения.
Это хорошо работает для простых типов данных и когда у вас есть фиксированные значения, которые необходимо сохранить, потому что вам нужно определить, какие переменные вы хотите сохранить во время разработки. Так что, если ваши текстовые поля создаются динамически и вы не знаете, сколько значений нужно хранить, это не очень полезно.
Использование IsolatedStorage может быть другим хорошим вариантом. Вы можете создать свой собственный файл в любом формате (сохраняя любые нужные вам значения) и сохранить его на локальном компьютере в «IsolatedStorage».
Вы можете создать папку где-нибудь на диске и просто записать файл в любом подходящем формате (XML, обычный текст, твой выбор). Вы можете, например, сделать это по пути, указанному в Environment.GetFolderPath (Environment.SpecialFolder.ApplicationData)
или Environment.GetFolderPath (Environment.SpecialFolder.LocalApplicationData)
.
Я бы посмотрел в изолированное хранилище. Настроить для каждого пользователя легко. А поскольку для этого требуется только частичное доверие, он будет работать для любого сценария развертывания.
Проверьте это введение .
Я считаю, что правильное место для хранения пользовательских настроек в WinForms 2.0 было бы в файле настроек (а не в файле конфигурации). Вот небольшая статья с объяснением.
Создайте .config или другой файл данных (например, xml) в данных приложения для определенного пользователя.
используйте system.environment.specialfolder для получения ApplicationData папки, добавьте подпапку с названием вашей компании, внутри нее подпапку с именем вашего приложения, в этот файл данных для этого конкретного пользователя. Таким образом,
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\YourCompany\\YourApplication\\YourData.config"
В зависимости от того, сколько переменных / данных вы хотите сохранить, файл app.config / settings может быть идеальным местом.
Проверьте вкладку «Настройки» в свойствах проекта и обратите внимание, что вы можете установить как настройки приложения, так и настройки пользователя. Настройки приложения влияют на все приложение. Пользовательские настройки хранятся для каждого пользователя.
Раздел app.config, содержащий пользовательские настройки, будет сохранен в каталоге пользователя при их сохранении и повторно включен при перезапуске приложения.
Проверьте этот URL , чтобы ознакомиться с приложением / user settings в MSDN, а также этот URL-адрес SO для аналогичного вопроса. [
] Вы также можете изучить возможность хранения знакомых старых файлов .ini в .ini для каждого пользователя, проверив перечисление Special Folders согласно этому URL.