Xamarin.Realm问题 - 运行时跳过行

时间:2017-04-21 17:43:27

标签: xamarin realm

请考虑以下代码:

enter image description here

在运行时,第一个断点实际上是跳过。永远不会调用我的GetInstance(),变量realm始终为null。无论下面的黄线上方是否存在任何代码,都不会调用任何代码,并且声明的任何变量都只是它们的默认值。

要解决此问题,只需更改if行以调用realm.All<UserCredential>().ToList().FirstOr....即可解决问题。调用第一个断点,正确初始化变量realm等。

直到最近,这还没有成为问题;过去几周,iqueryables一直运作良好。最近只改变了一件事:我添加了一个名为&#34; Engines&#34;的目录。到.csproj(这是一个pcl)的根,它对.csproj做了一个非常微妙的改动:

<UseMSBuildEngine>true</UseMSBuildEngine>已添加。

我怀疑我通过添加&#34;引擎&#34;目录。凭借这些知识,我改变了我的&#34;引擎&#34;目录名称,重命名其中的文件,并从.csproj中删除此添加的属性。这并没有任何区别。

是的,我已经清理过,重置了iOS模拟器,清理了派生数据,重新启动了Xamarin Studio,重新启动了osx,将我的头撞在桌子上等等。

我对Xamarin(或Realm?)的稳定性非常紧张。如果一点点添加一个目录可以通过跳过代码行来默默地破坏我的整个项目,那么我们有什么希望呢?

1 个答案:

答案 0 :(得分:0)

我想我已经弄明白了。 Xamarin实际上并没有完全移除&#34;引擎&#34;磁盘中的文件夹,只是.csproj中对它的引用。手动删除名为&#34; Engines&#34;的实际目录后它似乎也正常运作。

我希望这可以帮助将来遇到这个问题的任何人!