2010-03-24 1 views
0

У меня есть приложение, использующее SQLite db, и мне нужно, чтобы пользователь мог переместить файл данных и указать приложение туда, куда он переместился. Я использовал Entity Framework для создания модели, и по умолчанию она помещает строку подключения в файл App.Config. Из того, что я прочитал, если я вношу изменения в строку подключения, они не вступят в силу до перезапуска приложения. Это кажется немного неуклюжим для моего использования. Я вижу, как я могу инициализировать мою модель и передавать пользовательскую строку, но я не уверен, что лучше всего подходит для хранения основных пользовательских префранций, таких как это? Инни, реестр, где-то еще? Я не хочу, чтобы пользователь каждый раз должен «открывать» файл, только когда он перемещается, а затем приложение будет пытаться автоматически открыть с этого момента.Где я могу хранить пользовательские данные конфигурации? Укажите путь к файлу данных?

ответ

3

Просмотрите, как создать пользовательские настройки конфигурации, которые можно сохранить в файле user.config. Реестр более или менее заброшен в пользу новой файловой системы на основе xml.

0

Вам не нужно использовать строку подключения, добавленную в App.Config. Вы можете пропустить добавление его на самом деле, в мастер EDMX.

Для этого вам нужно просто подключить строку подключения в любом месте, где вы выберете, и передать ее в свой конструктор ObjectContext.

Вы можете поместить строку подключения во внешний файл, в реестр или где угодно.

Это может иметь смысл, чтобы иметь статический класс, который генерирует строку подключения, и захватывает местоположение файла из общего источника, который пользователь может изменить (то есть реестр, файл на диске, переменные окружения и т.д.)

0

Вы можете создать класс настроек, а затем сериализовать его в XML-файл с заданным именем в местоположении, заданном через файл app.config. Затем вы можете контролировать, как часто файл читался в памяти самостоятельно. Единственное время, когда вам нужно было перезапустить приложение, было изменение местоположения файла настроек.

Смежные вопросы