Возможно, вы захотите использовать оба местоположения.
Установленное местоположение включает в себя любые данные, которые поставляются с приложением. Он доступен только для чтения, и поэтому пользователь не может изменять или добавлять данные в этом месте.
Папки ApplicationData предназначены для пользователей и могут быть доступны для записи. Они будут сохраняться через обновления.
Типичный шаблон - отправить вашу предварительно заполненную базу данных в пакет приложений, чтобы она была установлена в папку installedLocation. Когда приложение запускается первым, он может скопировать базу данных из установленной папки в папки ApplicationData, и приложение затем может использовать данные оттуда.
Пока приложение не копирует данные, находящиеся в папке ApplicationData, данные пользователя будут сохраняться между обновлениями. Если пользователь просто добавляет данные и не изменяет предварительно заполненные данные, или если предварительно заполненные данные не изменяются с обновлениями, это легко. Вы можете просто скопировать любые новые данные, но не перезаписывать существующие данные.
Если пользователь может изменить предварительно заполненные данные, и если обновление может изменить предварительно заполненные данные, тогда это немного сложнее: вам понадобится система, чтобы узнать, пришли ли данные от пользователя или нет, а затем обновите его, только если он не пришел от пользователя. Как лучше всего это будет зависеть от базы данных и данных. Две возможности - это измененный столбец или отметка времени.