C# 以xamarin窗体或xamarin android还原sqlite数据库
我在xamarin中实现了备份数据库,它将我的数据库复制到sdcard。下面的代码显示了备份文件的路径:C# 以xamarin窗体或xamarin android还原sqlite数据库,c#,sqlite,xamarin.forms,xamarin.android,C#,Sqlite,Xamarin.forms,Xamarin.android,我在xamarin中实现了备份数据库,它将我的数据库复制到sdcard。下面的代码显示了备份文件的路径: "/sdcard/MyTaskDatabase" 我想实施恢复备份。为此,我想将备份文件复制到下面的路径(本地数据库路径): 我知道我必须使用此功能: System.IO.File.Copy(sourcePath, destinationPath, true); 但我无法获取sourcePath和destinationPath。 请帮忙 我有一个功能来恢复数据库,但它不工作,没有错误 p
"/sdcard/MyTaskDatabase"
我想实施恢复备份。为此,我想将备份文件复制到下面的路径(本地数据库路径):
我知道我必须使用此功能:
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);
}
你的意思是说你真的不知道这两个参数应该使用什么路径?或者你已经试过了,但出现了错误,或者根本不起作用?@Jason我试过了,但不起作用,你能修复吗?它不起作用,也不产生任何错误?你如何测试它是否有效?在覆盖现有db文件之前,您确定要关闭所有打开的SQL连接吗?@Jason我更新了我的问题并将还原功能附加到它上,请看,您能告诉我错误吗?您的意思是您不知道这两个参数使用什么路径吗?或者你已经试过了,但出现了错误,或者根本不起作用?@Jason我试过了,但不起作用,你能修复吗?它不起作用,也不产生任何错误?你如何测试它是否有效?在覆盖现有数据库文件之前,您确定要关闭所有打开的SQL连接吗?@Jason我更新了我的问题,并将我的还原功能附加到其中,请查看,您能告诉我错误吗?
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);
}