我一直在使用 LocalDB.mdf 文件来构建我的应用程序,但现在需要在生产中使用它并创建一个可安装的应用程序。
经过研究,似乎存储此类文件的最佳位置是在/Appdata/Local/
文件夹中。
如果它不存在或已被删除,我打算在那里创建一个新的 LocalDB.mdf 文件。
我的应用程序资源中有一个预制的 LocalDB.mdf 文件,我想/Appdata/Local/
在第一次运行时将其复制到此文件夹中,但我看到 Access is denied 错误。
我可以为该文件夹创建一个空白文件。
这是代码:
string appDataFolder = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
string dvAppDataFolder = appDataFolder + @"\MyApp";
AppDomain.CurrentDomain.SetData("DataDirectory", dvAppDataFolder);
if (!Directory.Exists(dvAppDataFolder))
Directory.CreateDirectory(dvAppDataFolder);
if (!File.Exists(dvAppDataFolder + "LocalDB.mdf"))
{
File.WriteAllBytes(dvAppDataFolder, LokiServer.Properties.Resources.newDB);
}
另外,我是否以正确的方式进行此操作?