Xamarin iOS:无法从 icloud 中的私有数据库中获取记录
Xamarin iOS: Can't fetch record from private database in icloud
想要将资产保存到私有数据库,但是......
...我的输出显示每次启动 "creating file...",那么我的代码哪里出了问题? :(
(uploading/saving 似乎有效,因为 "uploaded" 出现了)
var recordID = new CKRecordID("diary");
AppleHelper.PrivateDatabase.FetchRecord(recordID, (record, err) => {
// Was there an error?
if (err != null) {
Console.WriteLine(err.ToString());
Console.WriteLine("creating file...");
var dbName = "diary.db";
var dbPath = Path.Combine(documents.Path, dbName);
AppDelegate.lib.Conn = new SQLite.SQLiteConnection (dbPath);
AppDelegate.lib.Conn.CreateTable<LibChemotherapie.Diary> ();
if (File.Exists (dbPath)) {
var assetRecord = new CKRecord ("sqlite");
var db = new CKAsset(NSUrl.CreateFileUrl(new string[] { dbPath }));
assetRecord ["diary"] = db;
AppleHelper.PrivateDatabase.SaveRecord (assetRecord, (record2, err2) => {
if(err2 == null)
Console.WriteLine("uploaded");
});
}
}
else {
Console.WriteLine("yeah exists");
}
});
谢谢,我解决了问题。我无法获取我存储的记录。问题是,我没有使用 RecordID 进行加载,而是用于保存。
想要将资产保存到私有数据库,但是...... ...我的输出显示每次启动 "creating file...",那么我的代码哪里出了问题? :( (uploading/saving 似乎有效,因为 "uploaded" 出现了)
var recordID = new CKRecordID("diary");
AppleHelper.PrivateDatabase.FetchRecord(recordID, (record, err) => {
// Was there an error?
if (err != null) {
Console.WriteLine(err.ToString());
Console.WriteLine("creating file...");
var dbName = "diary.db";
var dbPath = Path.Combine(documents.Path, dbName);
AppDelegate.lib.Conn = new SQLite.SQLiteConnection (dbPath);
AppDelegate.lib.Conn.CreateTable<LibChemotherapie.Diary> ();
if (File.Exists (dbPath)) {
var assetRecord = new CKRecord ("sqlite");
var db = new CKAsset(NSUrl.CreateFileUrl(new string[] { dbPath }));
assetRecord ["diary"] = db;
AppleHelper.PrivateDatabase.SaveRecord (assetRecord, (record2, err2) => {
if(err2 == null)
Console.WriteLine("uploaded");
});
}
}
else {
Console.WriteLine("yeah exists");
}
});
谢谢,我解决了问题。我无法获取我存储的记录。问题是,我没有使用 RecordID 进行加载,而是用于保存。