以Xamarin形式或Xamarin android还原sqlite数据库

时间:2019-04-20 18:33:07

标签: c# sqlite xamarin.forms xamarin.android

我在xamarin中实现了备份数据库,它将数据库复制到sdcard。下面的代码显示了备份文件的路径:

"/sdcard/MyTaskDatabase"

我要实施还原备份。为此,我要将备份文件复制到以下路径(本地数据库路径):

database = new TodoItemDatabase(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "TodoSQLite.db3"));

我知道我必须使用此功能:

System.IO.File.Copy(sourcePath, destinationPath, true);

但是我无法获取sourcePath和destinationPath。 请帮忙。

我具有恢复数据库的功能,但是它不起作用并且没有错误。

public void CopyAndRestore(string sourcePath)
    {
        var dbFileName = "TodoSQLite.db3";

        TodoItemDatabase yourSQliteRepository = new TodoItemDatabase(GetLocalFilePath(dbFileName));

        string destinationPath = GetLocalFilePath(dbFileName);

        yourSQliteRepository.DeleteAllDatabase();
        yourSQliteRepository.CloseDb();

        System.IO.File.Copy(sourcePath, destinationPath, true);
    }

0 个答案:

没有答案