我有一个wpf应用程序。它使用 SQL CE 数据库。
我正在用户特定的 AppData 文件夹中创建 sdf 文件。但对于个人应用程序,这将创建单独的sdf文件。
我不想要这件事。我只想要一个公共数据库位置,任何用户/管理员都可以在其中拥有读/写访问权限。
这种情况首选哪个位置?
答案 0 :(得分:0)
Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)
这为您提供了共享所有应用数据的根文件夹。在这里为您的应用创建一个子文件夹并将文件存储在那里。
答案 1 :(得分:0)
不幸的是,只有可用的公共场所,每个人都会建议系统ProgramData目录。通常位于“C:\ ProgramData” vista 和 7 下。
对于 XP ,它是“C:\ Documents and Settings \ All Users \ Application Data”
如果您的应用程序在管理模式下运行,则无需读/写访问权限。
但是如果您计划在标准帐户下运行该应用程序,那么您可能需要写入权限。但这取决于系统UAC。
因此建议在ProgramData下为您的数据库创建一个文件夹,将您的数据库放在那里,以供其他用户使用的所有其他应用程序使用,并为此文件夹授予写入/修改访问权限所有用户。