我的App有两种类型的用户,付费用户和免费用户。对于免费用户,我不会为他们在我的应用程序中创建的数据提供任何备份。因此该领域数据库实例(例如db1)不同步。对于付费用户,我正在证明备份,这里我使用的是同步领域数据库(比如db2)。
这里的条件是用户更愿意成为付费用户。如何同步上一离线领域数据库中可用的数据?如何将此db1合并到db2中?
另外,我在Db中写了一大堆数据(视频和图像)。我更喜欢异步写作和阅读。我尝试过writeAsync方法,它给出了异常。任何关于这方面的建议都将不胜感激。
下面的代码抛出了realm是从错误的线程访问的。
public async Task InsertItemInDB(Post model)
{
try
{
//realm.Write(() =>
// {
// realm.Add(model);
// });
var realm = Realm.GetInstance(Config);
await realm.WriteAsync( (Realm obj) => {
realm.Add(model, true);
});
}
catch(Exception ex){
Console.WriteLine("problem writing to DB" + ex);
}
}发布于 2017-03-26 22:08:02
启动WriteAsync块时,必须使用传递到lamb块中的Realm实例,否则会得到一个无效的线程异常。
你的代码应该是:
await realm.WriteAsync( (Realm obj) => {
// Use the Realm instance that was passed in, i.e. `Realm obj`
obj.Add(model, true);
});https://stackoverflow.com/questions/43017589
复制相似问题