Best Practice re SDF расположение файла? - PullRequest
2 голосов
/ 21 сентября 2010

Я пишу приложение базы данных SQL Compact с базой данных SDF, которое мне нужно установить на компьютер пользователя.Пользователь должен иметь возможность чтения и записи в базу данных, а база данных должна быть доступна для всех пользователей.Приложение должно работать с обычными правами пользователя, и UAC нельзя отключить.

Где лучше всего разместить базу данных на компьютере пользователя?Я думал, что c:\ProgramData было предпочтительным местом, но проверяя его права доступа, я вижу, что обычные пользователи имеют только разрешение на чтение.Итак, я ищу альтернативу.Спасибо за вашу помощь.

Ответы [ 3 ]

2 голосов
/ 26 сентября 2010

Я только прикрепляю файлы в (Имя пользователя) \ Documents ", если они будут открыты или сохранены непосредственно пользователем, скажем, если они дважды щелкнули и открылись через Проводник. Учитывая его SDF, я, вероятно, поместил бы его в% APPDATA% \ (Название компании) \ (Название продукта)

2 голосов
/ 15 июня 2011

Вы всегда должны помещать любые файлы, которые должны быть свободно изменены пользователем, в папку «Данные приложения».В этом случае папка данных Common Application, которая доступна всем пользователям.это позволяет приложению изменять этот файл, не требуя повышенных разрешений.

Таким образом, вы получаете путь к папке «Общие данные приложения».

Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)
1 голос
/ 22 сентября 2010

В отсутствие каких-либо четких указаний по этому вопросу я остановился на c:\Users\Public\Documents в качестве местоположения файла данных. Если есть лучшее место для этого файла, я бы хотел услышать об этом. Я оставлю этот вопрос открытым еще пару дней, прежде чем принять собственный ответ.

...