使用Xamarin.Android(c#)在parse.com上进行完全外部连接的最佳方法

使用Xamarin.Android(c#)在parse.com上进行完全外部连接的最佳方法,c#,database,parse-platform,xamarin,outer-join,C#,Database,Parse Platform,Xamarin,Outer Join,我有一个常见的场景,即显示带有用户详细信息的注释,我正在尝试找出在解析时执行此操作的最佳方法。 (假设我们有一个类注释:id、post、user和一个类用户:id、photo、name) 我试着做一些在解析中不可能做到的事情: var userDetails = ParseObject.GetQuery("User"); var query = ParseObject.GetQuery ("Review") .WhereEqualTo ("business", application.

我有一个常见的场景,即显示带有用户详细信息的注释,我正在尝试找出在解析时执行此操作的最佳方法。
(假设我们有一个类注释:id、post、user和一个类用户:id、photo、name)

我试着做一些在解析中不可能做到的事情:

var userDetails = ParseObject.GetQuery("User");

var query = ParseObject.GetQuery ("Review")
    .WhereEqualTo ("business", application.currentBusiness)
    .WhereMatchesQuery ("user", userDetails);
它不起作用,因为用户是一种关系,让我进一步解释:

从我所读到的内容来看,有两种方法可以在解析中建立关系。一个带数组,一个带指针

如果希望包含整个对象(在我的例子中是用户),但结果不超过100个,那么数组是很好的

指针对于大型数据库来说更好,但为了获得每个评论的用户详细信息,我必须进行一次额外的查询。。这是很多疑问

因此,我的选择是我认为:

1)使用数组的完整外部联接检索整个查询
问题是如果我的应用程序越来越大,速度会越来越快

2)使用带有关系的完整外部联接检索整个查询
很多疑问。我将很快达到parse.com的请求/秒限制

3)将我想要的详细信息存储在comments类中以及用户ID中
这可能是一个好主意,但我正在使用Facebook登录,登录后,如果用户照片自上次以来发生了变化,则用户照片将被更新,因此如果我想使用此想法,我必须以某种方式禁用照片更新

4)使用数组,每次只检索一定数量的注释。
这听起来是最好的方法,每次大约50秒,我可以实现一个ListView,当我们到达列表末尾时,它会加载更多的注释


你们觉得呢,伙计们?我该怎么办?我在这里遗漏了什么吗?

毕竟,最好的解决方案是为用户使用指针。
使用指针和.Include可以通过将整个用户对象存储在Comment类nice上,获得整个用户对象,而无需执行许多查询,也无需破坏用户类与comments类的连接

另外,如果有人想知道如何使用指针进行连接以及如何检索对象,那么下面是检索注释和照片的q查询:

var query = ParseObject.GetQuery ("Comments")
            .WhereEqualTo ("Article", _article)
            .Include ("user");
下面是如何访问照片

_user.photo = queryResult.Get<ParseObject>("user").Get<ParseFile>("profile_pic").Url;
\u user.photo=queryResult.Get(“user”).Get(“profile\u pic”).Url;