关于您的书“使用Silverlight 4的专业商务应用程序”,有些东西让我很累。我正在谈论从代码中获取查询结果。假设您正在使用WCF RIA服务,由于服务器和客户端之间的异步机制,您总是得不到任何结果。 我试过使用这样的BusyIndicator(VB),但它不起作用:
dim ctx as new DomainService1
dim query= from p As Entity1 In Ctx.GetQueryEntity1Query select p
If ctx.IsLoading = True Then
BusyIndicator1.IsBusy = True
Else
BusyIndicator1.IsBusy = False
End If
如何在服务器完成加载操作之前停止程序?
答案 0 :(得分:1)
您需要使用Load - DomainContext类的方法加载实体。此方法需要调用查询并指定要加载的实体。 Load-Method返回LoadOperation的实例,您可以使用该实例来检查实体的负载是否已经finshed并访问已加载的实体。
尝试更新您的代码,如下所示:
dim ctx as new DomainService1
dim query= ctx.GetQueryEntity1Query
dim loadOperation = ctx.Load(query)
loadOperation.Completed += LoadCompleted
BusyIndicator1.IsBusy = True
Private Sub LoadCompleted(sender as object, e as EventArgs)
BusyIndicator1.IsBusy = False
end Sub