我在 Xamarin 中使用 Realm for .NET 时遇到问题。
我可以正常添加、更新和删除对象,但同样,java、Realm for .NET 没有 copyFromRealm 对象。
我的方法只是打开领域,选择数据,我需要在数据层之外处理这个对象(我使用一个类来查询数据并在另一层中验证它)。
但即使使用 DeepCloner (nuget),领域也会抛出异常,指责领域已关闭,但我使用 .NET 的 using() 指令关闭它。
我可以在关闭并操作该对象之前从领域复制一个对象。我只需要读取对象中的数据,而不是再次将其写入领域。
using(var realm = Realm.GetInstance(config))
{
var data = realm.All<DadosUsuario>().FirstOrDefault().ShallowCopy();
}
Run Code Online (Sandbox Code Playgroud)
是的,没有理由不可能。DeepClone 失败的可能原因是它从 RealmObject 基类(最值得注意的是Realm)克隆属性。相反,您可以自己编写克隆方法,或者使用AutoMapper,它应该忽略开箱即用的只读属性,但需要稍微更多的配置。
| 归档时间: |
|
| 查看次数: |
1439 次 |
| 最近记录: |