这是一个使用 Xamarin 的 Android 应用程序。
我有一个简单的搜索屏幕,用户可以在其中选择根据州、城市、州际等(1 个或多个选项)进行过滤。当状态改变时,其他下拉列表会相应地改变(基于该州存在的城市或州际公路等)。每次更改状态下拉列表以更新其他下拉列表时,都需要 2 秒或更长时间,同时 UI 没有响应。我还注意到 RaisePropertyChanged 事件直到 set 方法中的所有代码都完成后才真正发生。如何加快速度以提供更好的用户体验?
这是缓慢的 SQL 调用。我正在寻找基于父属性的子对象列表。
var parentIds = _connection.Table<Parent>().Where(x => x.State == state).Select(x => x.Id);
return _connection.Table<Child>()
.Where(x => parentIds.Contains(x.ParentId))
.Select(x => x.ChildProperty)
.OrderBy(x => x)
.Distinct();